![]() |
![]() |
![]() |
|||||
![]() |
![]() |
![]() |
![]() |
![]() |
|||
| 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: * 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 |
|
|||||||
| Programming A discussion forum for programs and programming used in tech-related businesses. |
![]() |
|
|
LinkBack | Thread Tools |
|
|
#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!! )
|
|
|
|
| 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 |
|
|
#2 (permalink) |
|
Registered User
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 |
|
|
|
|
|
#3 (permalink) |
|
Design Team Member
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) |
|
|
|
|
|
#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? |
|
|
|
|
|
#5 (permalink) |
|
Design Team Member
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 |
|
|
|
|
|
#7 (permalink) |
|
Design Team Member
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 |
|
|
|
![]() |
| Thread Tools | |
|
|