机器语言和汇编语言编程之间有什么关系?
答案 0 :(得分:4)
发明汇编语言是为了让人们更容易编写机器语言。
汇编语言:
MOV AX,1
机器语言:
B8 01 00 ; B8 = copy two bytes into AX 0001 = value to copy
请注意,汇编语言隐藏了将0100
转换为0001
- 此处理器为“little endian”
一个重要的区别是汇编语言提供标签:
JMP next_thing
机器语言:
EB FC ; EB = jump, FC = current address - 4 bytes
在装配之前,您必须手动计算跳跃偏移量。
答案 1 :(得分:1)
两者都是特定于实现的,并处理处理器的各个指令,但机器代码稍低,代表人类程序员作为一系列数字,几乎总是纯二进制。
另一方面,汇编是象征性的,而不是纯二进制。它被设计为由人类程序员读取,然后转换为机器代码二进制文件,但仍然可以使用单独的指令。
Wikipedia总结得很好:
更易读的机器语言再现,称为汇编语言,使用助记符代码来引用机器代码指令,而不是简单地使用指令的数值。例如,在Zilog Z80处理器上,导致CPU递减B处理器寄存器的机器代码00000101将用汇编语言表示为DEC B.
答案 2 :(得分:0)
汇编语言是机器语言的人类可读表示。