汇编小知识
1.8086的寄存器
内部寄存器8个:分为数据寄存器,地址寄存器,变址寄存器
其中数据寄存器4个:AX,BX,CX,DX,又可分为AH,BH,CH,DH和AL,BL,CL,DL。
AX称为累加寄存器,I/O指令均使用该寄存器,访问外部硬件和接口。
BX称为基址寄存器,访问内存时用于存放基址
CX称为计数寄存器,用于循环、字符串的循环控制
DX称为数据寄存器,在寄存器间接寻址的I/O指令中存放I/O地址
地址指针寄存器2个:SP,BP
SP称为堆栈寄存器,BP称为基址指针寄存器,在数组和字符串运算时,用于存放内存的偏移地址
变址寄存器2个:SI,DI
SI称为源变址寄存器,DI称为目的变址寄存器,用于存放数据块操作的内存地址
段寄存器4个:CS,DS,ES,SS
CS代码段寄存器
DS数据段寄存器
ES附加段寄存器
SS堆栈段寄存器,用于存放段地址
2.指令指针
IP:始终指向将要执行的指令,用户不能访问和编程。
标志寄存器:FLAGS 16个寄存器 9个标志位
其中状态标志位有6个:
CF:进位标志位
PF:奇偶标志位
AF:辅助进位位
ZF:零标志位
SF:符号标志位
OF:溢出标志位
控制标志位
TF:跟踪标志位
IF:中断标志位
DF:方向标志位
3.寻址方式
数据寻址
立即寻址:mov al,5
寄存器寻址:move ax,bx
直接寻址:mov ax,[2000H]
寄存器间接寻址:mov ax,[bx]
寄存器相对寻址:mov ax,offset [si]
基址变址寻址:mov ax,[bx][di]
相对基址变址寻址:mov offset [bx][si]
代码成就万世基积沙镇海
梦想永在凌云意意气风发
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?