nahongyan1997
发表于 2020-8-1 09:24:44
看看
sbx
发表于 2020-8-17 20:15:28
;问题
;显示字符串是现实工作中经常要用到的功能,应该编写一个通用的子程序来实现这个功能。我们应该提供
;灵活的调用接口,使调用者可以决定显示的位置(行、列)、内容和颜色
;子程序描述
;名称:show_str
;功能:在指定的位置,用指定的颜色,显示一个用0结束的字符串。
;参数(dh)=行号(取值范围0~24),(dl)=列号(取值范围0~79),
;(cl)=颜色,ds:si指向字符串的首地址。
;返回:无
;应用举例:在屏幕的8行3列,用绿色显示data段中的字符串。
assume cs:code
data segment
db 'Welcome to masm!',0
data ends
code segment
start: mov dh,8
mov dl,3
mov cl,2
mov ax,data
mov ds,ax
mov si,0
call show_str
mov ax,4c00h
int 21h
show_str:push cx
mov ax,0b800h
mov es,ax
mov al,dh
mov ah,160
mul ah
mov bx,ax
mov al,dl
mov ah,2
mul ah
add bx,ax
mov di,0
s0:mov cl,
mov ch,0
jcxz s
mov al,
pop cx
mov ah,cl
mov es:,ax
inc si
add di,2
push cx
jmp short s0
s:ret
code ends
end start
sbx
发表于 2020-8-17 20:26:00
;问题
;显示字符串是现实工作中经常要用到的功能,应该编写一个通用的子程序来实现这个功能。我们应该提供
;灵活的调用接口,使调用者可以决定显示的位置(行、列)、内容和颜色
;子程序描述
;名称:show_str
;功能:在指定的位置,用指定的颜色,显示一个用0结束的字符串。
;参数(dh)=行号(取值范围0~24),(dl)=列号(取值范围0~79),
;(cl)=颜色,ds:si指向字符串的首地址。
;返回:无
;应用举例:在屏幕的8行3列,用绿色显示data段中的字符串。
assume cs:code
data segment
db 'Welcome to masm!',0
data ends
code segment
start: mov dh,8
mov dl,3
mov cl,2
mov ax,data
mov ds,ax
mov si,0
call show_str
mov ax,4c00h
int 21h
show_str:push cx
mov ax,0b800h
mov es,ax
mov al,dh
mov ah,160
mul ah
mov bx,ax
mov al,dl
mov ah,2
mul ah
add bx,ax
mov di,0
s0:mov cl,
mov ch,0
jcxz s
mov al,
pop cx
mov ah,cl
mov es:,ax
inc si
add di,2
push cx
jmp short s0
s:ret
code ends
end start
skyzou
发表于 2020-8-25 21:23:05
看看
lj2122
发表于 2020-8-27 08:45:41
4
仝仝仝
发表于 2020-10-27 15:10:20
看看
崽团4418
发表于 2020-11-1 02:58:08
顶
yigiaowoligiao
发表于 2021-1-10 15:55:08
可以
z_y_h
发表于 2021-2-27 15:55:46
看看
eol75999
发表于 2021-2-27 16:07:04
1
285583335
发表于 2021-3-2 16:52:04
{:5_107:}
巨牙海民654
发表于 2021-4-20 20:39:34
感谢分享
chumeng
发表于 2021-5-18 15:14:49
啊啊啊太强了
sddddddd
发表于 2021-5-24 16:57:44
看一下
yuqiteng
发表于 2021-6-24 01:07:37
感谢感谢
xiagm
发表于 2022-2-26 11:18:57
学习
yxyxyxyxyx
发表于 2022-3-4 21:12:39
学习
ms1234
发表于 2022-9-5 19:12:57
我瞅瞅
xuan5118
发表于 2022-9-18 11:20:17
1
moonholic
发表于 2022-11-21 10:03:20
学习