2-11.asm

来自「华工电信系汇编习题的编程实现」· 汇编 代码 · 共 59 行

ASM
59
字号
stack   segment stack 'stack'
        dw 32 dup(0)
stack   ends
data    segment
        
        First dd 12345678H
        Second db 5 dup(?)

data    ends

code    segment
begin   proc far
        assume ss:stack,cs:code,ds:data
        push ds
        sub ax,ax
        push ax
        mov ax,data
        mov ds,ax

        mov bx,word ptr First
        mov dx,word ptr First  ;  move 5678H to dx
        mov cl,2
        rol dx,cl
        mov word ptr First,dx

        mov dl,byte ptr First + 3  ;the 5th
        mov cl,6
        shr dl,cl
        mov Second + 4,dl

        mov dx,word ptr First + 2
        mov cl,2
        shl dx,cl
        mov word ptr First + 2,dx

        mov dh,byte ptr First + 1
        mov cl,6
        shr dh,cl
        mov dl,byte ptr First + 2
        mov cl,2
        shr dx,cl
        rol dl,cl
        mov byte ptr First + 2,dl
        mov dx,word ptr First + 2
        mov word ptr Second +2,dx   ;the 3rd and 4th

        mov word Ptr First,bx          ;1st and 2nd
        mov ax,word ptr First
        shl ax,cl
        mov word ptr Second,ax;


        ret

begin   endp
code    ends
        end begin
     

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?