用masm软件汇编使用子程序显示十行相同字符串
时间: 2023-12-04 12:06:15 浏览: 107
用MASM32来DIY一个判断字符串1是否为字符串2的子串的函数演示代码(源码+exe)(应用repe cmpsb指令,区分大小写)
3星 · 编辑精心推荐
下面是使用MASM汇编语言编写的程序,可以显示十行相同的字符串。该程序使用了一个子程序来输出字符串。
```assembly
.model small
.stack 100h
.data
msg db 'Hello, World!', 0Ah, '$'
.code
main proc
mov ax, @data
mov ds, ax
mov cx, 10 ; 循环10次
mov si, offset msg ; 将字符串地址存储在si寄存器中
call print_string ; 调用子程序输出字符串
mov ah, 4Ch ; 退出程序
int 21h
main endp
print_string proc
mov ah, 09h ; 调用DOS的打印字符串功能
int 21h
ret
print_string endp
end main
```
在这个程序中,我们定义了一个字符串 `msg`,并将其地址存储在 `si` 寄存器中。然后我们使用 `call` 指令调用 `print_string` 子程序来输出字符串。循环10次,每次输出同样的字符串。
在子程序中,我们使用 `int 21h` 调用DOS的打印字符串功能来输出字符串。最后使用 `ret` 返回到主程序中。
你可以将上述代码保存为 `.asm` 文件,使用MASM汇编器进行汇编、链接和运行。
阅读全文