用汇编编写子程序,可以显示字符串到屏幕指定位置
子程序名称:show_str
功能:在屏幕的指定位置,用指定颜色,显示一个用0结尾的字符串
参数: dh = 行号(0~24) dl = 列号(0~79) cl = 颜色 ds:si :字符串的首地址
返回:字符串显示在屏幕上
show_str: push ax //先把子程序中用到的寄存器入栈,保存寄存器的值,避免寄存器冲突
push cx
push dx
push es
push si
push di
mov ax,0b800h //80x25彩色显示模式内存空间开始地址B8000H的段地址
mov es,ax
mov al,160 //一行80个字符,一个字符占1字节,颜色属性占1字节共2个字节,一行占80*2=160个字节
mul dh //dh是8位,所以是8位乘法,另一个乘数默认放在AL中。 dh表示行号,al表示一行占用字符的个数,dh*al得到从B8000H开始到dh行之间的字符个数。