32位汇编语言程序设计基础知识
🔰 第一章:汇编语言是什么?
✅ 汇编语言是:
- 靠近计算机底层的语言
- 每一条汇编指令对应一个机器指令
- 更容易控制硬件,效率高,但书写复杂
✅ 编写汇编程序需要:
- 汇编器:MASM(微软宏汇编器)
- Irvine32 库:老师常用的教学库(简化输入输出等操作)
📁 第二章:汇编程序结构
1 |
|
🧱 第三章:常用寄存器解释(32 位)
寄存器 | 全名 | 作用 |
---|---|---|
eax | Accumulator | 通用计算、返回值、常用 |
ebx | Base | 通用变量寄存器 |
ecx | Counter | 常用作计数器(循环) |
edx | Data | 数据相关、乘除法使用 |
esi | Source Index | 源地址,数组遍历常用 |
edi | Destination | 目标地址 |
ebp | Base Pointer | 基址指针,访问参数使用 |
esp | Stack Pointer | 栈顶指针 |
🧾 第四章:变量定义和数据段
1 |
|
dword
:定义一个 32 位整数byte
:定义一个字节数据offset
:用来获取变量的地址
🔧 第五章:基本指令详解
✅ 数据传送类
1 |
|
✅ 算术运算
1 |
|
✅ 比较与跳转
1 |
|
🔁 第六章:循环结构
示例:输出 1 到 5
1 |
|
📞 第七章:过程调用(函数)
写法:
1 |
|
📌 第八章:数组操作基础
1 |
|
🔚 第九章:正确退出程序
1 |
|
🚫 不要写 call exit
,那是错误用法!
✅ 第十章:用 Irvine32 输入输出
功能 | 使用方法 |
---|---|
输出整数 | mov eax, num + call writeint |
输入整数 | call readint → eax 中返回值 |
输出字符串 | mov edx, offset msg + call writestring |
换行 | call crlf |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Firefly!