汇编学习笔记(13)MOVZA、MOVSX,XCHG练习
TITLE Data Transfer Example
INCLUDE irvine32.inc
.data
val1 WORD 1000h
val2 WORD 2000h
arrayB BYTE 10h,20h,30h,40h,50h
arrayW WORD 100H,200H,300H
arrayD DWORD 100000h,20000H
.code
main PROC
;MOVZX(move with zero-extend)
mov bx,0A69Bh
movzx,eax,bx ;0000A69BH
movzx edx,bl ;00000009H
movzx,cx,bl ;0009H
;MOVSX(move with sign-extend) 没搞懂
mov bx,0A69BH
movsx eax,bx ;FFFFA69BH
movsx edx,bl ;FFFFFF9BH
mov b1,7BH ;bx=FF7BH
mov cx,bl ;cx=007BH
;XCHG(exchange data)
mov ax,val1 ;ax=1000h
XCHG ax,val2 ;ax=2000h,val2=1000h
mov val1,ax ;val1=2000h
;直接偏移寻址
mov al,arrayB ;ax=0010h
mov al,[arrayB+1] ;ax=0020h
mov al,[arrayB+2] ;ax=0030H
;如果是字就加2,双字就加4
main endp
posted on 2011-08-13 00:13 ManLoveGirls 阅读(398) 评论(0) 收藏 举报
浙公网安备 33010602011771号