1、3.0 寻址方式预备知识寻址方式预备知识 指令由指令由操作码操作码和和操作数操作数两部分组成;两部分组成;操作码说明计算机要执行哪种操作,用一个唯一的助记符操作码说明计算机要执行哪种操作,用一个唯一的助记符表示,对应着一个机器指令的二进制编码;表示,对应着一个机器指令的二进制编码;操作数是指令执行的参与者,即各种操作的对象;操作数是指令执行的参与者,即各种操作的对象; 指令中操作码是不可缺少的,但操作数则是可选部分;指令中操作码是不可缺少的,但操作数则是可选部分;16位系统中,操作数的数目一般为位系统中,操作数的数目一般为02个,用逗号分隔。个,用逗号分隔。2022年6月8日星期三1操作码操作
2、码操作数操作数指令格式指令格式寻址方式寻址方式 寻址方式可分为寻址方式可分为指令寻址指令寻址和和数据寻址数据寻址两种类型;两种类型;本章主要介绍本章主要介绍数据寻址方式数据寻址方式。 数据寻址方式数据寻址方式在指令中,指定操作数或操作数存放位置的方法。在指令中,指定操作数或操作数存放位置的方法。 一般,指令系统中会设计多种操作数的寻址方式;一般,指令系统中会设计多种操作数的寻址方式;操作数采取不同的寻址方式,指令的执行速度也会不同。操作数采取不同的寻址方式,指令的执行速度也会不同。2022年6月8日星期三2答:由答:由控制器控制器区分,通过区分,通过CS和和IP寻址的为指寻址的为指令,其他为数
3、据。令,其他为数据。思考:数据、程序都在存储器中,如何区分?思考:数据、程序都在存储器中,如何区分?示例指令示例指令 数据传送指令数据传送指令MOV , 例如:例如:MOV AX , 1234HMOV AX , BXMOV AX , BX 注意:注意:寻址方式是针对操作数的寻址方式是针对操作数的,而不是指令的。,而不是指令的。指定操作数的寻址方式时,指定操作数的寻址方式时,一定要指明一定要指明是对源操作数还是是对源操作数还是对目的操作数而言。对目的操作数而言。2022年6月8日星期三3指令中数据的位置指令中数据的位置 指令中指令中立即数寻址方式;立即数寻址方式; 寄存器中寄存器中寄存器寻址方式
4、;寄存器寻址方式; 存储单元中存储单元中直接、间接、相对、基址变址、相对基址变址寻址方式;直接、间接、相对、基址变址、相对基址变址寻址方式;n区别在于:形成操作数有效地址的方式不同;区别在于:形成操作数有效地址的方式不同;2022年6月8日星期三4内部暂存器内部暂存器 IP ES SS DS CS输入输入/输出输出控制电路控制电路外部总线外部总线执行部分执行部分控制电路控制电路1 2 3 4 5 6ALU标志寄存器标志寄存器 AH AL BH BLCH CL DH DL SP BP SI DI通用寄存器通用寄存器地址加法器地址加法器指令队列缓冲器指令队列缓冲器执行部件执行部件 (EU)总线接口
5、部件总线接口部件 (BIU)16位位20位位16位位8位位MOV AX , 1234HMOV AX , BXMOV AX , BX寻址方式中的符号表示寻址方式中的符号表示 (BX)=1000H BX= 2000H= (AX)()(AX)+(BX)符号符号含义含义Imm立即数立即数R寄存器寄存器SR段寄存器段寄存器M存储单元存储单元S源操作数源操作数D目的操作数目的操作数()()中的数据中的数据 地址单元地址单元2022年6月8日星期三63.1 立即数寻址方式立即数寻址方式 立即数立即数寻址方式寻址方式操作数的数值紧跟在操作码之后,直接操作数的数值紧跟在操作码之后,直接在指令中在指令中出现。出现
6、。 特点特点优点:执行速度快;优点:执行速度快;缺点:立即数不能修改,通用性差(适用于常数)。缺点:立即数不能修改,通用性差(适用于常数)。 注意:注意:立即数不能作为立即数不能作为目的操作数目的操作数;可以为可以为8位也可以为位也可以为16位,常用于给寄存器赋值。位,常用于给寄存器赋值。2022年6月8日星期三7不需访存即可执行不需访存即可执行立即数寻址方式举例立即数寻址方式举例 MOV BL , 12H MOV X1 , 34 MOV BX,3478H机器指令:机器指令:BB 78 34在存储器中的存放格式在存储器中的存放格式 2022年6月8日星期三8BLBH3478BB低地址单元低地址
7、单元高地址高地址单元单元操作码操作码MOV AL , 300 正确吗?正确吗?位数不匹配,不正确!位数不匹配,不正确!代码段代码段3.2 寄存器寻址方式寄存器寻址方式 寄存器寻址方式寄存器寻址方式操作数在操作数在寄存器寄存器中,指令的操作码之后给出该寄存器的编中,指令的操作码之后给出该寄存器的编号或名称。号或名称。某些系统的指令是将寄存器编号与操作码一起编码的。某些系统的指令是将寄存器编号与操作码一起编码的。 除除IP、FR外的所有寄存器外的所有寄存器(包括段寄存器)都可以用作寄(包括段寄存器)都可以用作寄存器寻址方式。存器寻址方式。 由于操作数存在于由于操作数存在于CPU中,指令执行时不需访
8、存,因此具中,指令执行时不需访存,因此具有有较快的执行速度较快的执行速度。2022年6月8日星期三9寄存器寻址方式举例寄存器寻址方式举例 MOV AX , 1234H ;(;(AX)1234H源操作数是源操作数是立即数寻址方式立即数寻址方式;目的操作数是目的操作数是寄存器寻址方式寄存器寻址方式。 MOV BX , AX ; (BX)()(AX)1234H源操作数及目的操作数均为源操作数及目的操作数均为寄存器寻址方式寄存器寻址方式。 MOV X , AX源操作数是源操作数是寄存器寻址方式寄存器寻址方式;目的操作数是目的操作数是直接寻址方式直接寻址方式。2022年6月8日星期三103.3 直接寻址
9、方式直接寻址方式 直接寻址方式直接寻址方式操作数在操作数在存储单元存储单元中,指令的操作码之后给出该存储单元的中,指令的操作码之后给出该存储单元的有效地址有效地址。 有效地址有效地址EA也称为偏移地址,是相对于段起始地址的偏移量;也称为偏移地址,是相对于段起始地址的偏移量;指令中,指令中,EA可以是可以是数值形式数值形式,也可以是,也可以是符号地址形式符号地址形式;例如:例如:MOV AX , 100H;数值地址必须加方括号;数值地址必须加方括号 MOV AX , DATA;符号地址必须事先定义;符号地址必须事先定义2022年6月8日星期三11直接寻址方式直接寻址方式物理地址的形成物理地址的形
10、成 在在默认默认情况下,数据在情况下,数据在DS段中段中物理地址物理地址PA =(DS)16 + EA 若数据不在若数据不在DS段,可用显式指明段寄存器的段,可用显式指明段寄存器的段超越段超越方式。方式。指令形式:指令形式:MOV ES:100H , AL物理地址物理地址PA =(ES)16 + 100H 指令指令MOV AX , 100H与与MOV AX , SS:100H执行结果是执行结果是否相同?否相同?不相同!所访问存储单元不同。不相同!所访问存储单元不同。2022年6月8日星期三12直接寻址方式直接寻址方式举例举例13H52H2022年6月8日星期三13 执行指令执行指令MOV BX
11、 , 1234H时,时,(DS)=2000H,存储单元,存储单元21234H的值为的值为5213H,问执行该指令后,问执行该指令后BX的值是什么?的值是什么? 该指令源操作数的寻址方式为该指令源操作数的寻址方式为直接寻址方式直接寻址方式; 有效地址有效地址EA = 1234H,无段超越,为默认的,无段超越,为默认的DS段;段; 物理地址物理地址PA = 2000H 16 + 1234H = 21234H 所以,该指令执行后所以,该指令执行后 (BX)=5213H21234H21235H思考问题思考问题 问问1:右边所示的三条指令有何不同?:右边所示的三条指令有何不同?源操作数的寻址方式源操作数
12、的寻址方式不同:第一条指令为直接寻址方式;不同:第一条指令为直接寻址方式;后两条指令为立即数寻址方式;后两条指令为立即数寻址方式;数据数制不同:前两条为十六进制;第三条为十进制。数据数制不同:前两条为十六进制;第三条为十进制。 问问2:MOV AX,X 和和 MOV AX,X 效果一样吗?效果一样吗?一样。一样。符号地址加不加括号指的都是之前定义的单元。符号地址加不加括号指的都是之前定义的单元。 问问3:高级语言的:高级语言的 y=x; 用汇编指令如何实现?用汇编指令如何实现?需要使用两条指令完成赋值。需要使用两条指令完成赋值。2022年6月8日星期三14MOV AX,2000HMOV AX,
13、2000HMOV AX,2000MOV AX,XMOV Y ,AX3.4 寄存器间接寻址方式寄存器间接寻址方式 寄存器间接寻址方式寄存器间接寻址方式操作数在操作数在存储单元存储单元中,中,指令的操作码之后给出存放该单元指令的操作码之后给出存放该单元有效地址有效地址的的寄存器寄存器编码或名称。编码或名称。 注意:可以用于这种寻址方式的寄存器称为注意:可以用于这种寻址方式的寄存器称为间址寄存器间址寄存器。间址寄存器有:间址寄存器有:BX、BP、SI、DI例如:例如:MOV AX , BX2022年6月8日星期三15寄存器间接寻址方式寄存器间接寻址方式物理地址的形成物理地址的形成 在在默认默认情况下
14、,数据在情况下,数据在DS段段或或SS段段中,由寻址所用的间址中,由寻址所用的间址寄存器决定;寄存器决定;物理地址物理地址PA = (DS) 16 + (BX/SI/DI);DS段段物理地址物理地址PA = (SS) 16 + (BP);SS段段 若需要寻址其他段,则可使用段超越方式;若需要寻址其他段,则可使用段超越方式;MOV AX , ES:BX MOV AX , ES:BP 操作数的寻址过程操作数的寻址过程2022年6月8日星期三162022年6月8日星期三17寄存器间接寻址方式寄存器间接寻址方式举例举例 例例3.2 执行指令执行指令MOV BX , DI 时,(时,(DS)=1000H
15、,(,(DI)=2345H,存储单元,存储单元12345H的值为的值为4354H,则指令执行,则指令执行后后BX的值为多少?的值为多少?该指令源操作数的寻址方式为该指令源操作数的寻址方式为寄存器间接寻址方式寄存器间接寻址方式;有效地址有效地址EA=(DI)=2345H,无段超越,为默认的,无段超越,为默认的DS段;段;物理地址物理地址PA = (DS) 16 + EA = 1000H 16 + 2345H = 12345H所以,该指令执行后所以,该指令执行后 (BX) = (12345H) =4354H2022年6月8日星期三1854H43H12345H12346H寻址方式判断正误寻址方式判断
16、正误MOV AX , SP 错误!错误!间址寄存器错误。间址寄存器错误。MOV AX , SP 正确!正确!寄存器寻址。寄存器寻址。MOV AX , SI 正确!正确!寄存器间接寻址。寄存器间接寻址。MOV AX , SI 正确!正确!寄存器寻址。寄存器寻址。MOV AX , BX 正确!正确!寄存器间接寻址。寄存器间接寻址。MOV AX , BX 正确!正确!寄存器寻址。寄存器寻址。MOV AX , BP 正确!正确!寄存器间接寻址。寄存器间接寻址。MOV AX , BP 正确!正确!寄存器寻址。寄存器寻址。MOV AX , DS 错误!错误!间址寄存器错误。间址寄存器错误。MOV AX ,
17、 DS 正确!正确!寄存器寻址。寄存器寻址。2022年6月8日星期三193.5 寄存器相对寻址方式寄存器相对寻址方式 寄存器相对寻址方式寄存器相对寻址方式操作数在操作数在存储单元存储单元中,操作数的有效地址为指令中指定中,操作数的有效地址为指令中指定间间址寄存器址寄存器的值与指令中给出的的值与指令中给出的偏移量偏移量(DISP)之和。之和。 指令格式指令格式间址寄存器:间址寄存器: BX、BP、SI、DI;偏移量:数值形式、或符号地址形式;偏移量:数值形式、或符号地址形式;例如:例如:2022年6月8日星期三20MOV AX , BX+100HMOV AX , BX100H MOV AX ,
18、100HBX寄存器相对寻址方式寄存器相对寻址方式物理地址的形成物理地址的形成 在在默认默认情况下,数据在情况下,数据在DS段段或或SS段段中,由寻址所用的间址中,由寻址所用的间址寄存器决定;寄存器决定;物理地址物理地址PA = (DS) 16 + (BX/SI/DI) + DISP ;DS段段物理地址物理地址PA = (SS) 16 + (BP) + DISP ;SS段段 若需要寻址其他段,则可使用段超越方式;若需要寻址其他段,则可使用段超越方式;MOV AX , ES:BX+100H MOV AX , ES:BP+100H 操作数的寻址过程操作数的寻址过程2022年6月8日星期三212022
19、年6月8日星期三22计算有效地址的注意事项计算有效地址的注意事项如果偏移量是如果偏移量是8位,则应先进行位,则应先进行16位符号扩展,再进行计算。位符号扩展,再进行计算。MOV AX,BX+0FFH中参与计算的偏移地址为中参与计算的偏移地址为0FFFFH;当计算所得的有效地址超过当计算所得的有效地址超过0FFFFH时,则将其对时,则将其对64K取模的取模的结果作为有效地址。结果作为有效地址。MOV AX , BX+100H,若,若(BX)=0FFFFH,则,则EA = 0FFFFH + 100H = 100FFH (mod 64K) = 0FFH以上对其他由多个部分计算形成以上对其他由多个部分
20、计算形成EA的寻址方式也同样适用。的寻址方式也同样适用。2022年6月8日星期三23寄存器相对寻址方式举例寄存器相对寻址方式举例 例例3.3 执行指令执行指令MOV BX,SI+100H 时,(时,(DS)=1000H,(SI)=2345H,存储单元,存储单元12445H的值为的值为2715H,则指令执,则指令执行后行后BX的值为多少?的值为多少?该指令源操作数的寻址方式为该指令源操作数的寻址方式为寄存器相对寻址方式寄存器相对寻址方式;有效地址有效地址EA=(SI) + 100H =2445H,为默认的,为默认的DS段;段;物理地址物理地址PA = (DS) 16 + EA = 1000H 1
21、6 + 2445H = 12445H所以,该指令执行后所以,该指令执行后 (BX) = (12445H) =2715H2022年6月8日星期三2415H27H12445H12446H寄存器相对寻址方式判断正误寄存器相对寻址方式判断正误 MOV AX, DI+06H 正确!正确!AXDS:DI+06H MOV AX, BP+06H 正确!正确!AXSS:BP+06H MOV AX , SP+10H错误!间址寄存器使用不正确!错误!间址寄存器使用不正确!2022年6月8日星期三253.6 基址变址寻址方式基址变址寻址方式 基址变址寻址方式基址变址寻址方式操作数在操作数在存储单元存储单元中,操作数的
22、有效地址为指令中指定的中,操作数的有效地址为指令中指定的基址寄存器的值与变址寄存器的值之和。基址寄存器的值与变址寄存器的值之和。 指令格式指令格式基址寄存器:基址寄存器:BX、BP;变址寄存器:变址寄存器:SI、DI;例如:例如:2022年6月8日星期三26MOV AX , BX+SIMOV AX , BPSIMOV AX , BX+SI基址变址寻址方式基址变址寻址方式物理地址的形成物理地址的形成 在在默认默认情况下,数据在情况下,数据在DS段段或或SS段段中,由寻址所用的基中,由寻址所用的基址寄存器决定;址寄存器决定;物理地址物理地址PA = (DS) 16 + (BX) + (SI/DI)
23、 物理地址物理地址PA = (SS) 16 + (BP) + (SI/DI) 若需要寻址其他段,则可使用段超越方式;若需要寻址其他段,则可使用段超越方式;MOV AX , ES:BX+SI MOV AX , ES:BP+SI 操作数的寻址过程操作数的寻址过程2022年6月8日星期三272022年6月8日星期三28基址变址寻址方式举例基址变址寻址方式举例 例例3.4 执行指令执行指令MOV BX , BX+SI 时,时,(DS)=1000H, (BX)=2100H,(SI)=0011H,存储单元,存储单元12111H的值为的值为1234H,则指令执行后,则指令执行后BX的值为多少?的值为多少?该
24、指令源操作数的寻址方式为该指令源操作数的寻址方式为基址变址寻址方式基址变址寻址方式;有效地址有效地址EA= (BX) + (SI) =2100H + 0011H =2111H物理地址物理地址PA = (DS) 16 + EA = 1000H 16 + 2111H = 12111H所以,该指令执行后所以,该指令执行后 (BX) = (12111H) =1234H2022年6月8日星期三2934H12H12111H12112H3.7 相对基址变址寻址方式相对基址变址寻址方式相对基址变址寻址方式相对基址变址寻址方式操作数在操作数在存储单元存储单元中,操作数的有效地址为指令中指定的基中,操作数的有效地
25、址为指令中指定的基址寄存器的值、变址寄存器的值和位移量址寄存器的值、变址寄存器的值和位移量(DISP)三者之和。三者之和。指令格式指令格式基址寄存器:基址寄存器:BX、BP;变址寄存器:变址寄存器:SI、DI;偏移量:数值形式、或符号地址形式;偏移量:数值形式、或符号地址形式;例如:例如:2022年6月8日星期三30MOV AX , BX+SI+100MOV AX , 100BXSIMOV AX , 100BX+SI相对基址变址寻址方式相对基址变址寻址方式物理地址的形成物理地址的形成 在在默认默认情况下,数据在情况下,数据在DS段段或或SS段段中,由寻址所用的基址中,由寻址所用的基址寄存器决定
26、;寄存器决定;物理地址物理地址PA = (DS) 16 + (BX) + (SI/DI) + DISP 物理地址物理地址PA = (SS) 16 + (BP) + (SI/DI) + DISP 若需要寻址其他段,则可使用段超越方式;若需要寻址其他段,则可使用段超越方式;MOV AX,ES:BX+SI+10HMOV AX,ES:BP+SI+10H 操作数的寻址过程操作数的寻址过程2022年6月8日星期三312022年6月8日星期三32相对基址变址寻址方式举例相对基址变址寻址方式举例 例例3.5 执行指令执行指令MOV AX,BX+SI+200H 时,时,(DS)=1000H, (BX)=2100
27、H,(SI)=0010H,存储单元,存储单元12310H的值为的值为1234H,则指令执行后则指令执行后AX的值为多少?的值为多少?该指令源操作数的寻址方式为该指令源操作数的寻址方式为相对基址变址寻址方式相对基址变址寻址方式;有效地址有效地址EA= (BX) + (SI) + 200H =2100H + 0010H + 200H =2310H物理地址物理地址PA = (DS) 16 + EA = 1000H 16 + 2310H = 12310H所以,该指令执行后所以,该指令执行后 (AX) = (12310H) =1234H2022年6月8日星期三3334H12H12310H12311H练练
28、 习习 试说明下列指令中源操作数的寻址方式,并指出指令执行后试说明下列指令中源操作数的寻址方式,并指出指令执行后寄存器寄存器AX中的值或所要寻找操作数的中的值或所要寻找操作数的EA值。值。设设(BX)=2000H,(SI)=40H2022年6月8日星期三341.MOV AX , 1234H2.MOV AX , 1234H3.MOV AX , BX4.MOV AX , BX5.MOV AX , BX+1234H6.MOV AX , BX+SI7.MOV AX , BX+SI+1234H直接寻址方式,直接寻址方式,EA=1234H立即数寻址方式,立即数寻址方式,(AX)=1234H寄存器寻址方式,
29、寄存器寻址方式, (AX)= 2000H寄存器间接寻址方式,寄存器间接寻址方式, EA=2000H寄存器相对寻址方式,寄存器相对寻址方式, EA=3234H基址加变址寻址方式,基址加变址寻址方式, EA=2040H相对基址加变址寻址方式,相对基址加变址寻址方式, EA=3274H寻寻址址方方式式练练习习MOV AX , 2000HMOV DS , AX MOV BX , 100HMOV AX , 150HADD BX , AXMOV AL , BXADD AL , BX+1MOV SI , 2ADD AL , BX+SIMOV AH , 0 MOV CH , 0MOV CL , BX+SI+1
30、ADD AX , CX2022年6月8日星期三35源操作数为源操作数为立即数寻址方式立即数寻址方式源操作数为源操作数为寄存器寻址方式寄存器寻址方式源操作数为源操作数为立即数寻址方式立即数寻址方式源操作数为源操作数为直接寻址方式直接寻址方式源操作数为源操作数为寄存器寻址方式寄存器寻址方式源操作数为源操作数为寄存器间接寻址方式寄存器间接寻址方式源操作数为源操作数为寄存器相对寻址方式寄存器相对寻址方式源操作数为源操作数为立即数寻址方式立即数寻址方式源操作数为源操作数为基址加变址寻址方式基址加变址寻址方式源操作数为源操作数为立即数寻址方式立即数寻址方式源操作数为源操作数为立即数寻址方式立即数寻址方式源
31、操作数为源操作数为相对基址加变址寻址方式相对基址加变址寻址方式源操作数为源操作数为寄存器寻址方式寄存器寻址方式总总 结(结(1/4) 三大类三大类寻址方式寻址方式按按操作数的存放位置操作数的存放位置分类分类立即数寻址方式立即数寻址方式寄存器寻址方式寄存器寻址方式存储器寻址方式(共存储器寻址方式(共5种)种) 指令中凡是加有方括号指令中凡是加有方括号”的立即数或寄存器,其值均的立即数或寄存器,其值均表示为表示为地址信息地址信息;例如:例如:MOV AX , 1000H MOV AX , BX2022年6月8日星期三362022年6月8日星期三37总总 结(结(2/4) 存储器寻址方式中,在取操作
32、数之前需要存储器寻址方式中,在取操作数之前需要计算有效地址计算有效地址;有效地址有效地址EA是将指令中是将指令中所有地址信息所有地址信息相加之和;相加之和;注意事项:注意事项: 1.有偏移量的,应将偏移量按补码转换为有偏移量的,应将偏移量按补码转换为16位位再计算;再计算; 2.有效地址应为有效地址应为16位,多于位,多于16位应位应按按64K取模取模; 存储器寻址方式中,存储器寻址方式中, 默认情况下均在默认情况下均在DS段段/SS段中,使用段段中,使用段超越的方式可改变默认段寄存器;超越的方式可改变默认段寄存器;例如:例如:MOV AX , ES:BPDI2022年6月8日星期三38总总
33、结(结(3/4) 间址寄存器间址寄存器BX、BP、SI、DI间址寄存器又可分为间址寄存器又可分为基址寄存器基址寄存器(BX、BP)和)和变址寄存变址寄存器器(SI、DI)两类;)两类;方括号方括号”中的寄存器只能是一个或两个间址寄存器,中的寄存器只能是一个或两个间址寄存器,且且不能同时不能同时为基址寄存器或变址寄存器;为基址寄存器或变址寄存器;2022年6月8日星期三39总总 结(结(4/4) 相对基址加变址寻址方式与其他寻址方式之间的变形关系相对基址加变址寻址方式与其他寻址方式之间的变形关系MOV AX , BX+SI+100H2022年6月8日星期三40源操作数寻址特点源操作数寻址特点指令
34、的变形指令的变形源操作数寻址方式源操作数寻址方式只有一个偏移量只有一个偏移量MOV AX , 100H只有一个间址寄存器只有一个间址寄存器MOV AX , BXMOV AX , SI有一个间址寄存器和一有一个间址寄存器和一个偏移量个偏移量MOV AX , BX+100HMOV AX , SI+100H有两个间址寄存器有两个间址寄存器MOV AX , BX+SI直接寻址方式直接寻址方式寄存器间接寻址方式寄存器间接寻址方式寄存器相对寻址方式寄存器相对寻址方式基址加变址寻址方式基址加变址寻址方式2. 指出下列各种操作数的寻址方式:指出下列各种操作数的寻址方式: BX SI 435H BP+DI+12
35、3 23 data DI+32 BX+SI EAX+90 BP+42022年6月8日星期三41寄存器间接寻址方式寄存器间接寻址方式寄存器寻址方式寄存器寻址方式立即数寻址方式立即数寻址方式相对基址加变址寻址方式相对基址加变址寻址方式直接寻址方式直接寻址方式寄存器相对寻址方式寄存器相对寻址方式基址加变址寻址方式基址加变址寻址方式32位系统的寄存器相对寻址方式位系统的寄存器相对寻址方式寄存器相对寻址方式寄存器相对寻址方式直接寻址方式直接寻址方式4. 判断下列操作数的寻址方式的正确性判断下列操作数的寻址方式的正确性 AX EAX BP SI+DI DS BH BX+BP+32 BL+442022年6月
36、8日星期三42错误错误,16位间址寄存器只有位间址寄存器只有BX,BP,SI,DI正确正确, 32位系统的寄存器间接寻址方式位系统的寄存器间接寻址方式正确正确,寄存器寻址方式,寄存器寻址方式错误错误,间址寄存器不能同时为变址寄存器,间址寄存器不能同时为变址寄存器正确正确,寄存器寻址;如:,寄存器寻址;如:MOV DS,AX正确正确,寄存器寻址,寄存器寻址错误错误,间址寄存器不能同时为基址寄存器,间址寄存器不能同时为基址寄存器 错误错误,16位间址寄存器只有位间址寄存器只有BX,BP,SI,DI4. 判断下列操作数的寻址方式的正确性判断下列操作数的寻址方式的正确性 (续续) CX+90H EDX
37、 BX+90H DX SI100H BX*4 EAX+EBX*6 DX+90H2022年6月8日星期三43错误错误,CX不可作为间址寄存器不可作为间址寄存器正确正确,32位系统的寄存器寻址方式位系统的寄存器寻址方式错误错误,应为,应为BX+90H错误错误,DX不能作间址寄存器不能作间址寄存器错误错误,书写格式应为,书写格式应为100HSI 或或 SI+100H错误错误,16位系统中没有比例因子寻址方式位系统中没有比例因子寻址方式错误错误,只能乘,只能乘1、2、4、8等比例因子等比例因子错误错误, DX不能作间址寄存器不能作间址寄存器5. 已知寄存器已知寄存器EBX、DI和和BP的值分别为的值分
38、别为12345H、0FFF0H和和42H,试分别计算各操作数的有效地址。,试分别计算各操作数的有效地址。 BXEA=2345H DI+123HEA=(DI) + 123H=10113H (mod 64K)= 0113H BP+DIEA=(BP) + (DI) =10032H (mod 64K)= 0032H BX+DI+200HEA=(BX) + (DI) +200H=12535H (mod 64K)= 2535H 1234HEA=1234H EBX*2+345HEA=(EBX*2)+345H=2468AH+345H=249CFH2022年6月8日星期三4416位系统的位系统的EA为为16位,位,32位系统位系统EA为为32位。位。6. 指出下列各寻址方式所使用的段寄存器指出下列各寻址方式所使用的段寄存器 SI+34H 456H ES:BP+DI BX+DI+200H BP+1234H FS:EBX*2+345H2022年6月8日星期三45DSDSESDSSSFS第第3章作业章作业附加作业:见邮箱中的文档附加作业:见邮箱中的文档2022年6月8日星期三46
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。