;**********************************************************

;程序运行平台说明

.386

.model flat,stdcall

option casemap:none

;**********************************************************





;**********************************************************

;文件包含

INCLUDE Irvine32.inc

;**********************************************************



;**********************************************************

;数据段定义

.data

val1 word 1000h

val2 word 2000h

arrayB byte 10h,20h,30h,40h,50h

arrayW word 100h,200h,300h

arrayD dword 10000h,20000h

;**********************************************************





;**********************************************************

;代码段定义

.code

main proc

;MOVZX

mov bx,423Ah

movzx eax,bx

movzx edx,bl;

movzx cx,bl;

call DumpRegs

;MOVSX

xor ebx,ebx

mov bx,423Ah

movsx eax,bx

movsx edx,bl

mov bl,7Bh

movsx cx,bl

call DumpRegs

;内存到内存的交换

mov ax,val1

xchg ax,val2

mov val1,ax

call DumpRegs

;直接偏移地址寻址

mov al,arrayB ;注意这里的mov al,arrayB和mov al,[arrayB]是一样的

mov al,[arrayB+1]

call DumpRegs

mov bx,[arrayW+2]

call DumpRegs



exit

main endp

end main