汇编语言显示字符串的通用子程序 发表于 2017-11-05 | | 浏览 次 12345678910111213141516171819202122232425262728293031323334353637383940414243444546ssume cs:codedata segment db 'Welcome to masm!',0data endscode segmentstart: mov dh,12 ;行号(取值范围0-24) mov dl,31 ;列号(取值范围0-79) mov cl,10001100b ;字符属性 mov ax,data mov ds,ax mov si,0 call show_str mov ax,4c00h int 21hshow_str: mov al,160 mul dh ;空行占用空间 add dl,dl ;空列占用空间 mov dh,0 add ax,dx mov bx,ax ;bx 保存显存偏移地址 mov ax,0b800h mov es,ax ;es 保存显存段地址 mov dh,cl ;颜色值用dh 保护 s: mov cl,[si] mov ch,0 jcxz ok mov es:[bx],cl mov es:[bx+1],dh add bx,2 inc si ;jmp short s loop s ok: retcode endsend start 请作者喝一杯咖啡 Donate WeChat Pay Alipay