Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What's the relationship between assembly language and machine language?

Are assembly language and machine language (for the same underlying system) really the same? Are there any differences between these two concepts?

like image 200
freenight Avatar asked Aug 10 '09 05:08

freenight


People also ask

What is the relationship between machine language and assembly language?

Assembly language is a more human readable view of machine language. Instead of representing the machine language as numbers, the instructions and registers are given names (typically abbreviated words, or mnemonics, eg ld means "load"). Unlike a high level language, assembler is very close to the machine language.

Is assembly language and machine language the same?

Machine language is a language that has a binary form. It can be directly executed by a computer. While an assembly language is a low-level programming language that requires software called an assembler to convert it into machine code.

What is the relationship between high level language assembly language and machine language?

An assembly language consists of a set of symbols and letters and requires translation to machine language. Both machine code and assembly languages are hardware specific. A high-level language is a programming language that uses English and mathematical symbols in its instructions.

How is machine language distinguished from assembly language?

Machine language is only understand by the computers. Assembly language is only understand by human beings not by the computers. In machine language data only represented with the help of binary format(0s and 1s), hexadecimal and octadecimal.


1 Answers

Assembly language is a convenience mechanism over the machine language. With assembly language you use mnemonic sequences instead of numeric operation codes and can use symbolic labels instead of manually calculating offsets. It also protects you from really dumb errors - like typing a malformed processor instruction.

Otherwise the assembly language is the equivalent of the machine language. Sometimes you will have an old assembler that will not support mnemonics for some instructions of the newer processors - then you can still insert operation codes directly into the program.

like image 113
sharptooth Avatar answered Sep 21 '22 14:09

sharptooth