公 两类寻址方式 数据的寻址方式 转移地址的寻址方式 (我们重点讨论数据的寻址方式)
• 两类寻址方式 数据的寻址方式 转移地址的寻址方式 (我们重点讨论数据的寻址方式)
公 2.数据的寻址方式 (1)立即寻址( mmediate addressing) 指令中直接给出操作数,操作数紧跟在操作码之 后,作为指令的一部分存放在代码段里,在取出 指令的同时也就取出了操作数,立即有操作数可 用,所以称之为立即寻址
2. 数据的寻址方式 (1) 立即寻址(Immediate addressing) 指令中直接给出操作数,操作数紧跟在操作码之 后,作为指令的一部分存放在代码段里,在取出 指令的同时也就取出了操作数,立即有操作数可 用,所以称之为立即寻址
公 目的源 example MOV AL 80H 存储器 低地址高地址 MOV AX, 3064H 代 oP码 ADD AL, 20H 段 64 ADD AX.1090H: 30
MOV AL, 80H ; 存储器 低地址 高地址 MOV AX, 3064H ; 代 码 ADD AL, 20H ; 段 ADD AX, 1090H; OP 6 4 3 0 目的源 example
公 立即数可以为8位,也可以为16位。如果是16位 数,则“高位字节存放在高地址中,低位字节存放 在低地址中。” 立即寻址方式常用于给寄存器赋值,并且只能用 于源操作数,而不能用于目的操作数
• 立即数可以为8位,也可以为16位。如果是16位 数,则“高位字节存放在高地址中,低位字节存放 在低地址中。” • 立即寻址方式常用于给寄存器赋值,并且只能用 于源操作数,而不能用于目的操作数
公 下述各条指令源操作数的寻址方式也都是立即寻 址,但这些指令都是错误的: MOV AL,256;256=100H,超过了AL能存放的数的范围 MOV AX,-32769;-32769超过了AX能存放的带符号数补码) 范围 MOV100H,AL;立即数不能作为目的操作数 DEC 20 单操作数指令不能使用立即数 MOV DS,1234H;源操作数是立即数,则目的操作数就不 能是段寄存器
• 下述各条指令源操作数的寻址方式也都是立即寻 址,但这些指令都是错误的: MOV AL, 256 ; 256=100H,超过了AL能存放的数的范围 MOV AX, -32769 ; -32769超过了AX能存放的带符号数(补码) 范围 MOV 100H, AL ; 立即数不能作为目的操作数 DEC 20 ; 单操作数指令不能使用立即数 MOV DS, 1234H ; 源操作数是立即数,则目的操作数就不 能是段寄存器