武汉理工大学32位微型计算接口技术及应用复习资料(2)

2019-05-17 15:53

AX、BX、CX、DX 共同特点:

既可作为16位寄存器来用又可作为两个8位寄存器(高、低位)来用; 都是用于暂存操作数,或是运算的中间结果或其它一些信息。 指令=操作码+操作数 2)段寄存器

CS、DS、SS、ES 、FS 、GS等6个段寄存器,和偏移地址寄存器一起形成20位存储器物理地址,对存储器中存放的程序、数据、堆栈区域加以区别、寻址。 寻址程序(指令):CS+IP;

寻址数据:(DS或ES)+(SI或DI、BX、BP); 寻址堆栈:SS+(SP或BP)

说明:

(1)6位状态标志寄存器的作用

CF 进位标志(Carry Flag):有进/借位为1,无进借位为0。另循环指令也使CF=1。 PF 奇偶标志(Parity Flag):运算结果若低8位所含1的个数为偶数,则PF=1,否则PF=0。 AF 辅助进位标志(Auxiliary Carry Flag):低4位向高位有进/借位(即第3位向第4位进位)为1,否则AF=0。

ZF 全零标志(Zero Flag):当运算结果使有效位数的各位全为零时ZF=1,否则ZF=0。 SF 符号标志(Sign Falg):当运算结果为负时SF=1,否则SF=0。SF的值就是有符号数的最高位(符号位)。

OF 溢出标志(Overflow Flag):当运算结果超出了机器所能表示的范围时,则OF=1,表示溢出,否则OF=0。

溢出判断方法:OP=Cn-1异或 Cn-2 (2) 3位控制寄存器

TF(trap flag):跟踪(陷阱)标志,当TF=1时,则在执行指令时产生单步中断,它执行一条指令后就调到一个专用服务程序上去,检查指令执行情况,用于程序调试.

IF(interrupt enable flag):中断允许标志,当IF=1时,允许中断请求;若TF=0时禁止中断.

DF(direction flag):方向标志.决定串操作的方向.当DF=1时,串指令自动按减地址执行.若DF=0时,串指令按增加地址执行. 具体如P21图3.3所示. 4. 实模式存储器模型

实模式存储器软件模型是用户在编程时只考虑如何使用存储器,而不考虑它的硬件细节。其模型的内容包括存储器空间、存储器的分段与分页、存储器的寻址和物理地址的形成等。

3.4.1 实模式下存储器地址空间和数据组织 1.实模式下存储器地址空间

32位处理器在实模式下,支持存储空间为220=1MB, 地址由00000-FFFFF(H)编码。 若存放的信息是字节,则从0开编号,按顺序每次加1,直到1048575为止。若存放的信息是字,则将字的低位字节存放在低地址,高位字节存放在高地址

若存放的信息是双字,则将双字的低位字存放在低地址,高位字存放在高地址。

5. 实模式存储器地址分段 1)实模式存储器地址分段

实模式只采用分段的方法管理与使用存储器,每段最大64KB。

值得注意的是:实模式下的段不能器始任意地址而必须从字节地址的16整数倍任一小段开始。微处理器规定:从0开始,每16个字节为一小段,如下所示: 0000,0001,0002,?, 000E,000F (一小段) 0010,0011,0012,?, 001E,001F (一小段) 0020,0021,0022,?, 002E,002F (一小段)

2)实模式存储器逻辑地址

存储器逻辑地址也就是编程时所使用的地址,实模式的逻辑由段基址和偏移量地址两部分组成。在程序中:

段基址值:16位的段寄存器CS、DS、SS、ES、FS、GS表示。

偏移量:16位指令指针IP、基址寄存器BX、指针寄存器BP或变址寄存器SI/DI表示。

如代码段逻辑地址表示为CS:IP,数据段逻辑地址表示为DS:BX等。段基址与偏移量的关系如图3.10所示。

6. 实模式下存储器寻址

2.段+偏移的寻址组合的潜在规则

段+偏移的寻址组合,实际上就是段寄存器和偏移寄存器组合。微处理器对此有一套规则,用于访问不同的存储器段。这套规则既适合于实模式也适合于保护模式,该规则定义了各种寻址方式段地址寄存器和偏移地址寄存器的组合方式。

如代码段寄存器总是和指令指针组合成CS:IP用于寻址程序的下一条指令。 若CS=14000H;IP=1200H,则处理器从存储器的CS+IP=15200H单元取下一条指令。

3. 段+偏移寻址方案允许重新定位

段+偏移寻址方案虽然很复杂,但它给系统带来许多优点,主要表现在这种段+偏移寻址方案允许程序和数据在存储器内重新定位。

段+偏移寻址方案由于偏移地址在段内寻址,因此,如果要移到不同存储区,则只需修改段寄存器内容就可保证程序的正常运行,实现程序和数据的重定位。

2.不同的逻辑地址可映射成同一个物理地址

在进行物理地址的计算时可以发现,同一个物理地址可由不同的逻辑地址来生成。只要按照物理地址 = 段寄存器的值 + 偏移量来改变段基址和偏移量的数值,并使两者合成的物理地址的数值保持不变就行。

如一组:002BH:0013H,生成002C3H 另一组:002CH:0003H,生成002C3H 7. 实模式下I/O地址空间模型

第四章


武汉理工大学32位微型计算接口技术及应用复习资料(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:生化

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: