Welcome to Tech Support Forum home to more then 136,000 problems solved. Issues have included: Spyware, Malware, Virus Issues, Windows, Microsoft, Linux, Networking, Security, Hardware, and Gaming Getting your problem solved is as easy as:
1. Registering for a free account
2. Asking your question
3. Receiving an answer

Registered members:
* Get free support
* Communicate privately with other members (PM).
* Removal of this message
* See fewer ads.
* And much more..

 



Want to know how to post a question? click here Having problems with spyware and pop-ups? First Steps
Go Back   Tech Support Forum > The IT Pro > Programming
User Name
Password
Site Map Register Donate Rules Blogs Mark Forums Read


Programming A discussion forum for programs and programming used in tech-related businesses.

Reply
 
LinkBack Thread Tools
Old 05-20-2008, 10:52 PM   #1 (permalink)
Registered User
 
Join Date: Aug 2006
Posts: 39
OS: XP


Question about Assembly Language

Hey,
So i'm trying to understand what assembly language is, and if I understand it correctly after reading the page on wikipedia, I have these questions:

Since assembly is a lower level programming language, can ANY binary be easily converted to assembly language? How does this work? Is there only one assembly language?

From what I understand, assembly is like converting 00100100 to a word that represents the binary command. If so, then wouldn't all binary be able to be easily converted to assembly? Help me out here please!

Thanks
(Tech Support Forum Rules!! )
Ring-Ding is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Reddit!
Reply With Quote
Important Information
Join the #1 Tech Support Forum Today - It's Totally Free!

TechSupportForum.com is a leading support website for your computer needs. We offer free, friendly and personalized computer support. Why pay to have your computer fixed when you can do it for free.

Join TechSupportforum.com Today - Click Here

Old 05-21-2008, 03:41 AM   #2 (permalink)
Registered User
 
Inactive's Avatar
 
Join Date: Apr 2005
Posts: 1,704
OS: ~


Re: Question about Assembly Language

binary (machine code) is for the CPU and not for humans. although, back in the 8-bit days, programers were known to be au fait with machine code - god bless them. so assembly is the human equivalent of machine code. in other words the programer is using instructions that the CPU will understand without any conversion. the programer would use an assembler to help him input essentially machine code. this would be done in hexadecimal which can be easily converted to binary. below are some examples of assembly. on the left would be the hexadecimal input and on the right is the instruction that the programer would understand. i could go through them, but they are from the Z80 processor and out of date now.

__________________


"it takes two to lie, one to lie and one to listen"
Homer
Inactive is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Reddit!
Reply With Quote
Old 05-21-2008, 06:21 PM   #3 (permalink)
Design Team Member
 
jamiemac2005's Avatar
 
Join Date: Jul 2007
Location: Coventry, UK
Posts: 1,879
OS: Vista, various linux distros


Re: Question about Assembly Language

I think freddyhard has covered everything, i've programmed in assembly for a short period of time, its generally used when a calculation/process has to be run as fast as possible... "Is there only one assembly language?": Assembly language is specific to the processor, you'll find nowadays that Intel's architecture is well known (and i think[dont know] mimicked in AMD proccessors)...

Oh and "Can any binary be converted into ASM?..." as freddyhard has said asm is essentially understandable machine code, binary(represented in hex as previously explained) is just representative of the machine code instructions being run by the computer... You'll find also that just as an assembler converts mnumonics into machine code there are such things as dissassemblers and ASM debuggers that do the opposite...

your idea of "All binary able to be converted into ASM" is almost there i think, from what i know binary(machine code) represents the instructions that a certain processor uses so the binary converted on one processor may not be the same on another... I don't know because i haven't experimented with older computers[no access to them]...

Still, freddyhard has it covered =]

Cheers,
Jamey

(p.s. this is good revision for my computing exam tomorrow =] hence repeating stuff that's already been said)
jamiemac2005 is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Reddit!
Reply With Quote
Old 05-21-2008, 11:42 PM   #4 (permalink)
Registered User
 
Join Date: Aug 2006
Posts: 39
OS: XP


Re: Question about Assembly Language

Yeah, ok. Well, the reason I was wanting to do this, is because I was kind of wondering how emulators are made, and I was thinking that maybe people take the rom and convert the binary to ASM so that they can get a better idea of exactly what the ROM is asking for so that they can better troubleshoot it.

Is this idea right? Do you guys know of any good programs to convert binary to ASM?

Also, if I converted a binary file to ASM, this ASM file would be specific to my processor, and if I converted the binary file on a computer using a different processor the ASM file that the disassembler created would be different?
Ring-Ding is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Reddit!
Reply With Quote
Old 05-22-2008, 12:38 AM   #5 (permalink)
Design Team Member
 
jamiemac2005's Avatar
 
Join Date: Jul 2007
Location: Coventry, UK
Posts: 1,879
OS: Vista, various linux distros


Re: Question about Assembly Language

Ah, this is a slightly different case, because an emulator's architecture will be specific to the processor thats being emulated.... what is it you want to emulate? i haven't ever done any work on emulation but theres some 'how to's on the internet, they will give you the general idea for emulation:

http://fms.komkon.org/EMUL8/HOWTO.html
http://www.cecs.csulb.edu/~hill/cecs...eme/howto.html
http://www.atarihq.com/danb/emulation.shtml

To be honest i think in an emulator the opcodes (machine code/binary) are converted from being useable on one processor to another and therefore not disassembled but translated from one opcode to another?
yet again i haven't done a whole lot of work on the subject so i can't give you any in-depth info on it...

Cheers,
Jamey
jamiemac2005 is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Reddit!
Reply With Quote
Old 05-29-2008, 08:08 AM   #6 (permalink)
Registered User
 
Inactive's Avatar
 
Join Date: Apr 2005
Posts: 1,704
OS: ~


Re: Question about Assembly Language

Quote:
Originally Posted by jamiemac2005 View Post
(p.s. this is good revision for my computing exam tomorrow =] hence repeating stuff that's already been said)
how did the exam go?
__________________


"it takes two to lie, one to lie and one to listen"
Homer
Inactive is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Reddit!
Reply With Quote
Old 05-29-2008, 10:39 AM   #7 (permalink)
Design Team Member
 
jamiemac2005's Avatar
 
Join Date: Jul 2007
Location: Coventry, UK
Posts: 1,879
OS: Vista, various linux distros


Re: Question about Assembly Language

haha =] Good thanks, it wasn't as bad as i thought it would be, Still i can't be completely confident until i get the results...

Cheers =]
Jamey
jamiemac2005 is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Reddit!
Reply With Quote
Reply


Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off




All times are GMT -7. The time now is 02:04 AM.



Copyright 2001 - 2009, Tech Support Forum
Home Tips Plus | Outdoor Basecamp | Automotive Support Forum

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85