8086/8088汇编通用寄存器详解及16/8位寄存器讨论

3星 · 超过75%的资源 需积分: 13 48 下载量 102 浏览量 更新于2024-08-02 2 收藏 67KB DOCX 举报
在清华大学版的80X86汇编语言程序设计教程中,第二章涵盖了8086/8088处理器的通用寄存器及其用途,以及程序员视角下的寄存器数量。以下是关键知识点的详细解析: 1. **通用寄存器的通用性与专用用途** - 8086/8088的8个通用寄存器包括AX(用于字乘法、字除法和I/O操作)、BX(存储器指针)、CX(循环控制计数器)、DX(字乘法、字除法和间接I/O)、SI(串操作源指针)、DI(串操作目的指针)、BP(堆栈指针)和SP(堆栈指针)。它们的通用性在于,除了特定用途外,还可临时存储数据,参与算术逻辑运算。 - 其中,BX、SI、DI和BP可以用作存储器寻址方式的指针寄存器。 2. **寄存器的大小和数量** - 从程序员角度看,8086/8088有14个可访问的16位寄存器,如AX、BX、CX、DX、SI、DI、BP、SP以及两个16位辅助寄存器(ES、CS、SS、DS、IP、BP),还有部分段寄存器。 - 8个可访问的8位寄存器主要是AH和AL,它们是AX寄存器的高8位和低8位。 3. **寄存器AX的操作举例** - 在提供的程序片段中,通过一系列指令操作,展示了AX寄存器值的变化过程。例如,最初MOV AX, 1234H将AX设置为1234H,然后通过MOVAH和MOVAL分别修改AL和AH,再进行加减运算,最终得到的结果分别是D15AH和D12DH。 4. **标志寄存器及其分类** - 8086/8088的标志寄存器包含CF(进位标志)、ZF(零标志)、SF(符号标志)、OF(溢出标志)、PF(奇偶校验标志)、AF(辅助进位标志)、DF(方向标志)、IF(中断允许标志)和TF(陷阱标志)。 - 这些标志分为两类:运算结果标志(如ZF、OF等)用于表示运算结果,状态控制标志(如DF、IF等)用于控制处理器的工作状态。 5. **标志状态的改变** - 改变标志的状态通常通过指令来实现,比如使用条件转移指令、算术运算指令或者标志位操作指令(如SAHF、CLC、CPL等),这些指令会根据运算结果或条件自动更新相应的标志位。 以上就是第二章的主要知识点概述,后续章节可能会涉及到更多的指令集介绍、内存管理、中断处理、子程序调用等内容,这些都是80X86汇编语言程序设计的基础。