- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
9. 块寻址方式 块寻址方式经常用在输入输出指令中,以实现外存储器或外围设备同内存之间的数据块传送。块寻址方式在内存中还可用于数据块搬家。 块寻址时,通常在指令中指出数据块的起始地址(首地址)和数据块的长度(字数或字节数)。 如果数据块是变长的,可用三种方法指出它的长度: (1)指令中划出字段指出长度; (2)指令格式中指出数据块的首地址与末地址; (3)由块结束字符指出数据块长度。 操作码 首地址 标志位 末地址 10. 段寻址方式 微型机中采用了段寻址方式,例如它们可以给定一个20位的地址,从而有1M存储空间的直接寻址能力。为此将整个1M空间存储器以64K为单位划分成若干段。在寻址一个内存具体单元时,由一个基地址再加上某些寄存器提供的16位偏移量来形成实际的20位物理地址。这个基地址就是CPU中的段寄存器。在形成20位物理地址时,段寄存器中的16位数会自动左移4位,然后以16位偏移量相加 ,即可形成所需的内存地址。 这种寻址方式的实质还是基址寻址。 寻址方式总结 立即(数)寻址 存储器直接寻址 间接寻址 变址寻址 基址寻址 基址加变址寻址 在指令中 在寄存器中 在主存中 在I/O端口中 直接寻址 寄存器间接寻址 寄存器寻址 寄存器间接寻址 存储器间接寻址 1.pentium的寻址方式 外部地址总线宽度是36位,但它也支持32位物理地址空间。 在实地址模式下,逻辑地址形式为段寻址方式:将段名所指定的段寄存器内容(16位)左移4位,低4位补全0,得到20位段基地址,再加上16位段内偏移,即得20位物理地址。 在保护模式下,32位段基地址加上段内偏移得到32位线性地址。由存储管理部件将其转换成32位的物理地址。 4.4.3 寻址方式举例 Pentium的寻址方式 下面对32位寻址方式作几点说明: ⑴立即数可以是8位,16位,32位。 ⑵寄存器地址:一般指令或使用8位通用寄存器,或使用16位通用寄存器,或使用32位通用寄存器。对64位浮点数操作,要使用一对32位寄存器。少数指令以段寄存器来实施寄存器寻址方式。 ⑶直接寻址:也称偏移量寻址方式,偏移量长度可以是8位,16位,32位。 ⑷基址寻址:基址寄存器B可以是上述通用寄存器中任何一个。基址寄存器B的内容为有效地址。 下面对32位寻址方式作几点说明: ⑸基址+偏移量寻址:基址寄存器B是32位通用寄存器中任何一个. ⑹比例地址+偏移量寻址:也称为变址寻址方式,变址寄存器I是32位通用寄存器中除ESP外的任何一个,而且可将此变址寄存器内容乘以1,2,4或8的比例因子S,然后再加上偏移量而得到有效地址。 ⑺,⑻两种寻址方式是⑷,⑹两种寻址方式的组合,此时偏移量可有可无。 ⑼相对寻址:适用于转移控制类指令。用当前指令指针寄存器EIP或IP的内容(下一条指令地址)加上一个有符号的偏移量,形成CS段的段内偏移。 [例3] 一种二地址RS型指令的结构如下所示: 6位 4位 1位 2位 16位 其中I为间接寻址标志位,X为寻址模式字段,D位偏移量字段。通过I,X,D的组合,可构成下表所示的寻址方式。 请写出六种寻址方式的名称。 [解]:⑴直接寻址 ⑵相对寻址 ⑶变址寻址 ⑷寄存器间接寻址 ⑸间接寻址 ⑹基址寻址 OP I X 偏移量D [例4] 某16位机器所使用的指令格式和寻址方式如下所示,该机有两个20位基址寄存器,四个16位变址寄存器,十六个16位通用寄存器,指令汇编格式中的S(源),D(目标)都是通用寄存器,M是主存中的一个单元。三种指令的操作码分别是MOV(OP)=(A)H ,STA(OP)=(1B)H ,LDA(OP)=(3C)H。MOV是 传送指令,STA为写数指令,LDA为读数指令。 要求: ⑴分析三种指令的指令格式与寻址方式特点。 ⑵CPU完成哪一种操作所花时间最短?哪一种操作所花时间最长?第二种指令的执行时间有时会等于第三种指令的执行时间吗? ⑶下列情况下每个十六进制指令字分别代表什么操作?其中如果有编码不正确,如何改正才能成为合法指令? ① (F0F1)H (3CD2)H ② (2856)H ③ (6FD6)H ④ (1C2)H [解]: ⑴第一种指令是单字长二地址指令,RR型; 第二种指令是双字长二地址指令,RS型, 其中S采用基址寻址或变址寻址,R由源寄存器决定; 第三种也是双字长二地址指令,RS型, 其中R由目标寄
原创力文档


文档评论(0)