记录自己的第一个比较长的汇编代码
记录自己的第一个比较长的汇编代码, 看学完后,回过头再来看的感觉是什么。
没新意的想法写出来的代码,只是没有纯dos环境。通过debug倒是看到全部的结果,不过是一个个显示 。题目是王爽汇编实验9.
本是自己记录,当然,大家有什么看法,欢迎随便说说。
assume cs:code, ss:stacksg
datasg segment
db ‘welcome to
masm!‘
datasg ends
colorsg segment
db 00000010b, 00100100b,
01110001b
colorsg ends
stacksg segment
dw 0,0,0,0,0,0,0,0
stacksg ends
code segment
start:
mov ax, datasg
mov ds, ax
mov ax,
stacksg
mov ss, ax
mov sp, 16
mov ax, 0b800h
mov es,
ax
;mov si, 1984
mov si, 3872
mov bx, 0
mov cx, 3
s1:
push ds
mov ax, colorsg
mov ds, ax
mov ah,
[bx]
pop ds
push cx
push bx
mov cx, 16 ; 16为字符串长度
mov di,
0
mov bx, 0
s2:
mov al, ds:[di]
mov es:[si + bx],
ax
add bx, 2
inc di
loop s2
pop bx
pop cx
add si,
160
inc bx
mov ah, [bx]
loop s1
mov ax, 4c00h
int
21h
code ends
end start