请使用子程序在屏幕中间分别显示绿色、绿底红色、白底蓝色的字符串“welcome to masm”汇编语言
时间: 2023-12-10 16:05:47 浏览: 115
好的,以下是汇编语言的代码:
```
.MODEL SMALL
.STACK 100H
.DATA
message1 DB 'welcome to masm', 0
message2 DB 'welcome to masm', 0
message3 DB 'welcome to masm', 0
.CODE
MAIN PROC
MOV AX, @DATA
MOV DS, AX
; 显示绿色字符串
CALL SHOW_GREEN_MSG
; 显示绿底红色字符串
CALL SHOW_GREEN_RED_MSG
; 显示白底蓝色字符串
CALL SHOW_WHITE_BLUE_MSG
MOV AH, 4CH
INT 21H
MAIN ENDP
; 显示绿色字符串子程序
SHOW_GREEN_MSG PROC
MOV AH, 0CH ; 显示函数号
MOV AL, 02H ; 绿色
MOV BH, 00H ; 背景色
MOV CX, 14 ; 字符串长度
MOV DX, 27 ; X坐标
MOV DH, 12 ; Y坐标
MOV SI, OFFSET message1 ; 字符串地址
INT 10H ; 调用BIOS中断显示字符串
RET
SHOW_GREEN_MSG ENDP
; 显示绿底红色字符串子程序
SHOW_GREEN_RED_MSG PROC
MOV AH, 0CH ; 显示函数号
MOV AL, 04H ; 红色
MOV BH, 02H ; 绿底
MOV CX, 14 ; 字符串长度
MOV DX, 25 ; X坐标
MOV DH, 13 ; Y坐标
MOV SI, OFFSET message2 ; 字符串地址
INT 10H ; 调用BIOS中断显示字符串
RET
SHOW_GREEN_RED_MSG ENDP
; 显示白底蓝色字符串子程序
SHOW_WHITE_BLUE_MSG PROC
MOV AH, 0CH ; 显示函数号
MOV AL, 01H ; 蓝色
MOV BH, 07H ; 白底
MOV CX, 14 ; 字符串长度
MOV DX, 23 ; X坐标
MOV DH, 14 ; Y坐标
MOV SI, OFFSET message3 ; 字符串地址
INT 10H ; 调用BIOS中断显示字符串
RET
SHOW_WHITE_BLUE_MSG ENDP
END MAIN
```
这个程序使用了BIOS中断来在屏幕上显示字符串。每个子程序都设置了不同的前景色和背景色,以显示不同的颜色组合。
阅读全文