1.3 概念—机器语言 & 汇编语言

amd - intel - 指令集 - CPU机器语言

机器语言:CPU 唯一能够直接识别和执行的语言,由二进制(0/1)组成。

汇编语言:使用助记符(ADD、SUB 等)代替机器语言(0111…),提高程序可读性。

机器语言 ⇄ 汇编语言:一一对应(1:1),汇编语言需经过汇编器转换后才能被 CPU 执行。

关系:汇编语言(ADD) → 汇编器(Assembler) → 机器语言(011100…) → CPU 执行

1.4 概念—汇编语言 & 高级语言

高级语言(如 C 语言)更接近人的思维,易于编写和维护。

编译器(Compiler)负责将高级语言翻译成汇编语言或机器语言。

执行流程:高级语言 → 编译器(Compiler)→ 汇编语言 → 汇编器(Assembler)→ 机器语言 → CPU

1
2
3
4
5
6
7
8
9
10
#include <stdio.h>

int main()
{
int a = 0;
int b = 1;
int c = a + b;

return 0;
}
1
2
3
4
5
004B1775    mov     dword ptr [ebp-8], 0
004B177C mov dword ptr [ebp-14h], 1
004B1783 mov eax, dword ptr [ebp-8]
004B1786 add eax, dword ptr [ebp-14h]
004B1789 mov dword ptr [ebp-20h],eax