2.立即数寻址 操作数作为立即数就在指令中给出。 例: MOV AX,1234H 机器码:B83412(低字节在地址小的单元) 操作:把立即数1234H送寄存器AⅩ中
2. 立即数寻址 操作数作为立即数就在指令中给出。 例:MOV AX,1234H 操作:把立即数1234H送寄存器AX中。 机器码:B8 34 12 (低字节在地址小的单元)
代码段(存储器中) MOV AX, 1234H AH AL B8操作码(B8) AX 56. 34 条 操作数(1234H)(指 立即数 令 指令执行后,AX=1234H(原有的内容被新 的内容替换)
AH AL AX ... B8 34 12 ... 56 78 代码段 (存储器中) 操作码(B8) 操作数(1234H) 立即数 一 条 指 令 指令执行后,AX=1234H (原有的内容被新 的内容替换)。 12 34 MOV AX,1234H
3.寄存器寻址 操作数在某个寄存器中 例: INC BL 操作:使BL中内容加1后送回 BL 若BL=00H,则执行后BL=01H BL=FFH,则执行后BL=00H(自动溢出)
3. 寄存器寻址 操作数在某个寄存器中。 例:INC BL 操作:使BL中内容加1后送回 +1 BL 00 若BL=00H,则执行后BL=01H BL=FFH,则执行后BL=00H (自动溢出) 01
4.存储器寻址 操作数在存储器中的一个或几个单元中。 在这种寻址方式下,要找到该操作数,关 键是必须找到该操作数所在单元的地址。 由于8086采用存储器段组织结构,内存单 元的地址由段起始地址(基地址)和该单元与段 起始地址之间的距离(以字节数计)两部分共同 决定
4. 存储器寻址 操作数在存储器中的一个或几个单元中。 在这种寻址方式下,要找到该操作数,关 键是必须找到该操作数所在单元的地址。 由于8086采用存储器段组织结构,内存单 元的地址由段起始地址 (基地址) 和该单元与段 起始地址之间的距离 (以字节数计) 两部分共同 决定
段起始地址(基地址):某个段寄存器的内容 (又称段基值)乘以16得到 段内偏移量:该单元与段起始地址之间的距 离(字节数)。又称有效地址EA (CS,DS,ES,SS)×16->段基地址 待寻址的内存单元 有效地址EA 内存单元物理地址多 物理地址段基值×16+EA
• 段起始地址(基地址):某个段寄存器的内容 (又称段基值)乘以16得到。 • 段内偏移量:该单元与段起始地址之间的距 离(字节数) 。又称有效地址EA。 待寻址的内存单元 有效地址EA (CS, DS, ES, SS)16 段基地址 物理地址 =段基值16+EA 内存单元物理地址