(4)寄存器间接寻址*—EA在基址寄存器(BX/BP) 或变址寄存器(SI/DI)中 MOAⅩ,[Bx] PA=16d×(DS)+(BX) MOV AX, ES: [BX PA=16dx(Es)+(BX) MOVAⅩ,[BP] PA=16d×(SS)+(BP) *不允许使用AX、CX、DX存放EA MOV AX,[CXI SRC和DST的字长一致 MOⅤDL,[BX];[BX]指示一个字节单元 MOV DX,[Bx];[BX]指示一个字单元 *适于数组、字符串、表格的处理
(4) 寄存器间接寻址 * —— EA 在基址寄存器 ( BX / BP ) 或变址寄存器 ( SI / DI ) 中 MOV AX , [ BX ] PA = 16d ( DS ) + ( BX ) MOV AX , ES: [ BX ] PA = 16d ( ES ) + ( BX ) MOV AX , [ BP ] PA = 16d ( SS ) + ( BP ) * 不允许使用AX、CX、DX 存放 EA MOV AX , [ CX ] * SRC 和 DST 的字长一致 MOV DL , [ BX ] ; [ BX ] 指示一个字节单元 MOV DX , [ BX ] ; [ BX ] 指示一个字单元 * 适于数组、字符串、表格的处理
5)寄存器相对寻址方式* (BX) 有效地址 (BP) 8位 位移 (SI 位 (DI) 例: MOV AX, COUNT[SI]或 MOV AX,[ COUNT+SI] 假设(DS)=3000H,(SI)=2000H, COUNT=100H 那么PA=32100H 假设(32100H)=1234H,那么(AX)=1234H *适于数组、字符串、表格的处理
有效地址 = ( BX ) ( BP ) 8 位 ( SI ) 16 位 ( DI ) + 位移量 (5) 寄存器相对寻址方式 * 例: MOV AX , COUNT [ SI ] 或 MOV AX , [ COUNT + SI ] 假设 ( DS ) = 3000H, ( SI ) = 2000H, COUNT = 100H, 那么 PA = 32100H 假设 ( 32100H ) = 1234H, 那么 ( AX ) = 1234H * 适于数组、字符串、表格的处理
(6)基址变址寻址方式 有效地址≈(Bx)x1(D) (SⅠI) (BP) MOV AX, IBXIIDI I 或 MOV AX,[BX+DI] MOAX,ES:[Bⅹ][SI] *适于数组、字符串、表格的处理 必须是一个基址寄存器和一个变址寄存器的组合 MOV AX, [BXJIBPX MOAX,[SI][DI]×
(6) 基址变址寻址方式 * MOV AX , [ BX ] [ DI ] 或 MOV AX , [ BX + DI ] MOV AX , ES: [ BX ] [ SI ] * 适于数组、字符串、表格的处理 * 必须是一个基址寄存器和一个变址寄存器的组合 MOV AX , [ BX ] [ BP ] MOV AX , [ SI ] [ DI ] 有效地址 = ( BX ) ( SI ) ( BP ) ( DI ) +