3.寄存器寻址 在该寻址方式中,寄存器名是操作数的符号地址,© 寄存器内容是指令所需的操作数。 汇编格式:R(R是寄存器名) 操作数位置:寄存器 功能:寄存器R的内容即为操作数 例3.5 INC AX 说明:INC为加1指令操作符,单操作数指令,目的操 作数采用寄存器寻址,AX的内容即为目的操作数。。 执行前:(AX)=3344H 执行:(AX)+1→AX 执行后:(AX)=3345H 11
3. 寄存器寻址 在该寻址方式中,寄存器名是操作数的符号地址, 3. 寄存器寻址 在该寻址方式中,寄存器名是操作数的符号地址, 寄存器内容是指令所需的操作数。 汇编格式:R(R是寄存器名) 操作数位置:寄存器 功能:寄存器R的内容即为操作数 例3.5 INC AX 说明:INC为加1指令操作符,单操作数指令,目的操 作数采用寄存器寻址,AX的内容即为目的操作数。 执行前:(AX)=3344H 执 行:(AX)+1→AX 执行后:(AX)=3345H 11
寄存器寻址例题 例3.6 DEC CX 说明:DBC为减1指令操作符,单操作数指令,寄存 器CX为目的操作数地址,CX的内容为目的操作数。 执行前:(CX)=78H, 执行:(CX)-1→CX 执行后:(CX)=77H 例3.7:ADD AX,BX 说明:ADD是双操作数指令,功能是实现加法运算, AX为目的操作数地址,AX的内容为目的操作数,BX为源操 作数地址,BX的内容为源操作数。 执行前:(AX)=1234H,(BX)=5620H,即 执行:(AX)+(BX)→AX 执行后:(AX)=6854H,(BX)不变。 12
寄存器寻址例题 例3.6 DEC CX 说明:DEC为减 1指令操作符,单操作数指令,寄存 寄存器寻址例题 说明:DEC为减 1指令操作符,单操作数指令,寄存 器CX为目的操作数地址,CX的内容为目的操作数。 执行前:(CX)=78H, 执 行:(CX)-1→CX 执行后:(CX)=77H 例3.7:ADD AX,BX 说明:ADD是双操作数指令,功能是实现加法运算, AX为目的操作数地址 为目的操作数地址,AX的内容为目的操作数 的内容为目的操作数,BX为源操 作数地址,BX的内容为源操作数。 执行前:(AX)=1234H (AX)=1234H,(BX) =5620H,即 执 行:(AX)+(BX) →AX 执行后:(AX) =6854H,(BX)不变 。 12 执行后:(AX) =6854H,(BX)不变
4.寄存器间接寻址 在该寻址方式中,操作数存放在存储器内, 寄存器内容是操作数的偏移地址EA,要想寻找 操作数必须首先生成操作数的物理地址。 能够用作间接寻址的寄存器只能是寄存器BX、 BP、SI、DI其中之一。操作数所在段的段地址 8086处理器有默认规定,即若寄存器BX、SI或 DI作间接寻址,则操作数存放在数据段中;若 寄存器BP作间接寻址,则操作数存放在堆栈段 中 .888 13
4. 寄存器间接寻址 在该寻址方式中,操作数存放在存储器内, 4. 寄存器间接寻址 在该寻址方式中,操作数存放在存储器内, 寄存器内容是操作数的偏移地址EA,要想寻找 操作数必须首先生成操作数的物理地址。 能够用作间接寻址的寄存器只能是寄存器BX、 BP、SI、DI其中之一。操作数所在段的段地址 8086处理器有默认规定 处理器有默认规定,即若寄存器BX、SI或 DI作间接寻址,则操作数存放在数据段中;若 寄存器BP作间接寻址,则操作数存放在堆栈段 中。 13
汇编格式:[R] 操作数位置:存储器 功能:寄存器R的内容为操作数的偏移地址EA 段基地址 指令 指令 存储器 基址或变址寄存器 EA 操作数 14
汇编格式:[R] 操作数位置:存储器 功能:寄存器R的内容为操作数的偏移地址EA 指令 段基地址 指令 存储器 基址或变址寄存器 EA ⊕ 操作数 指令 14
寄存器间接寻址例题 例3.8 ADD AX,[SI] 说明:ADD是双操作数指令,功能是实现加法运算, AX是目的操作数地址,寻址方式是寄存器寻址方式, [S]是源操作数地址,寻址方式采用寄存器间接寻址, 操作数在存储器内,默认在数据段中。 执行前:(AX)=1122H,(SI)=20H,(DS)=1000H, (10020H)=3344H 执行: (10020)+(AX)→AX 执行后:(AX)=4466H,(SI)、(DS)、(10020D内容 不变 执行过程如图3.2所示。 88 15
寄存器间接寻址例题 例3.8 ADD AX,[SI] 寄存器间接寻址例题 例3.8 ADD AX,[SI] 说明:ADD是双操作数指令,功能是实现加法运算, AX是目的操作数地址,寻址方式是寄存器寻址方式, [SI]是源操作数地址,寻址方式采用寄存器间接寻址, 操作数在存储器内,默认在数据段中 。 执行前:(AX)=1122H,(SI)=20H,(DS)=1000H, (10020H)=3344H 执行: (10020H)+(AX)→AX 执行后:(AX)=4466H (AX)=4466H,(SI) 、(DS) 、(10020H) (10020H)内容 不变。 执行过程如图3.2所示。 15