Asked in ComputersComputer Programming
Computers
Computer Programming
Why are machine language and assembly language considered machine dependent?
Answer

Wiki User
June 19, 2011 4:15PM
Machine languages are composed of instructions intended to be read directly by the microprocessor (the computer's CPU). The manufacturer of the CPU determines it's "INSTRUCTION SET"
ASSEMBLY LANGUAGE on the other hand IS NOT machine dependent. The same commands ADD, Divide, Move, etc are universal. HOWEVER the ASSEMBLY LANGUAGE has to have an INTERPRETER for EACH CPU, and that will translate the Universal ASSEMBLY language to the MACHINE SPECIFIC code required to program the CPU.
Related Questions
Asked in Computer Programming
Why assembly level language is called machine dependent language?

In programming, any "machine dependent" language is a low-level
programming language, such as Assembler, that uses mnemonics and
code specifically designed for a particular microprocessor or CPU.
For example, an assembler language writen using the operators for
an Intel x86 CPU would not work on a machine with a Motorola CPU,
and vice versa. So, "X86 Assembler" is considered "machine
dependent".
Asked in Computer Terminology, Computer Programming, C Programming, The Difference Between
What are the differences between machine language and assembly language?

In machine language, each instruction is written in the form of
long strings of 0s and 1s.
An assembly language is machine dependent. The programmer must
have the detailed knowledge of the setup of the computer he/she is
using. The program written in assembly languages for one computer
cannot be used in any other program.
Asked in Computer Programming, C Programming
Why is assembly language known as a low level language?

The level of a language is an indication of how abstract it is
compared to the machine code it produces. The higher the level, the
further it is from the machine and thus the more abstract it is.
Assembly language has a near 1:1 translation to machine code with
very little in the way of abstraction, thus it is a low-level
language.
Asked in Computer Programming, Intel 8086 and 8088
Why is assembly language considered easier for humans to program than machine language?

Assembly is signficantly shorter and easier to remember than the
equivilant machine instructions.
Assembly instructions are human readable characters, for which a
direct translation exists to the binary machine code
instructions.
Pseudo example:
add <- assembly instruction
1010101010 <- machine instruction
Asked in Computer Programming, Computer Science
What is the advantage of assembly language over machine language?

Assembly language is more human-readable than machine language.
Generally, statements in assembly language are written using short
codes for the instruction and arguments, such as "MOV $12 SP", as
opposed to machine language, where everything is written as
numbers. Assembly language can have comments and macros as well, to
ease programming and understanding.
Generally, programs called "assemblers" transform assembly
language to machine language. This is a relatively straightforward
process, there being a clear 1-to-1 transformation between assembly
and machine language. This is as opposed to compilers, which do a
complicated transformation between high-level language and
assembly.
--------------------------------------------------------------------
ASSEMBLY is the key word to define the difference between
Machine Language and Assembly. . Assembly language assembles steps
of MACHINE CODE into SUB-ROUTINES defined by simple text words:
Such as: the assembly command 'ADD' may represents 20-30 machine
commands.
Asked in Computer Programming
Why is assembly language considered more user friendly than machine language?

Machine language is a stream of bytes interpreted by the CPU to
perform operations on the computer. Reading machine language
directly requires knowledge of or access to a list of "opcodes"
(the numeric value associated with each instruction) in the
program. Assembly language is a human-readable translation of
machine language with additional features such as mapping of
symbols to actual memory addresses or registers. People who use
assembly language ultimately also become proficient in
understanding machine language.
For example, in the x86 architecture, this machine language:
B8 05 00
is represented in assembly language as:
mov ax, 5
It is clear for someone who understands the assembly language that
the instruction will move the immediate value "5" into the register
"ax."