使用汇编若连续键入三个8,在显示器上显示“Good number”。按ESC键结束程序返回DOS
时间: 2023-12-10 07:38:20 浏览: 66
以下是使用汇编语言实现上述功能的示例代码:
```
.model small
.stack 100h
.data
msg db 'Good number$'
.code
main proc
mov ax, @data
mov ds, ax
; clear keyboard buffer
mov ah, 0Ch
int 21h
; set up loop counter
mov cx, 3
key_loop:
; wait for key press
mov ah, 00h
int 16h
; check if key is "8"
cmp al, '8'
jne key_loop
; decrement loop counter
dec cx
; check if loop counter is zero
jz print_msg
; otherwise, continue looping
jmp key_loop
print_msg:
; display message
mov ah, 09h
lea dx, msg
int 21h
; wait for ESC key press
wait_for_esc:
mov ah, 00h
int 16h
cmp al, 1Bh ; check if key is ESC
jne wait_for_esc
; return to DOS
mov ah, 4Ch
int 21h
main endp
end main
```
该程序使用`int 16h`中断等待键盘输入,并通过比较输入字符来确定是否连续键入了三个“8”。如果是,则显示消息并等待ESC键。最后,程序返回DOS。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![Asm](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)