|
主题 : : 实验9调试完毕,交流下,能改进的地方请提出(我未加闪烁) [待解决] |
回复[ 1次 ]
点击[ 242次 ] | |
荣誉值:0
信誉值:0
注册日期:2010-03-24 23:32 |
我就不注释了。新手,希望大家指教。
一、比较短的
assume cs:code
data segment
db 'welcome to masm!'
db 0ah,2ch,79h
data ends
code segment
start:mov ax,data
mov ds,ax
mov bx,0
mov ax,0b800h
mov es,ax
mov si,0
mov di,0
mov al,ds:[16]
mov cx,16
s:mov dx,cx
mov cl,[bx]
mov ch,0
sub cl,20h
jcxz s1
add cl,20h
mov ch,al
mov es:860h[si],cx
add si,2
inc bx
mov cx,dx
loop s
mov ax,4c00h
int 21h
s1:inc bx
mov cx,dx
dec cx
add di,1
add si,2
mov al,[di+16]
jmp short s
code ends
end start
二、比较长的
assume cs:code
wel segment
db 'welcome to masm!'
wel ends
col segment
dw 79h,2ch,0ah
col ends
stack segment
dw 4 dup (0)
code segment
start:mov ax,col
mov ds,ax
mov ax,stack
mov ss,ax
mov sp,8
push ds:[0]
push ds:[2]
push ds:[4]
mov ax,wel
mov ds,ax
mov ax,0b800h
mov es,ax
mov si,0
mov cx,16
pop ax
s:mov dx,cx
mov cl,[bx]
mov ch,0
sub cl,20h
jcxz s1
add cl,20h
mov ch,al
mov es:860h[si],cx
add si,2
inc bx
mov cx,dx
loop s
mov ax,4c00h
int 21h
s1:inc bx
mov cx,dx
dec cx
add si,2
pop ax
jmp short s
code ends
end start | | |