📄 05_05.asm
字号:
;05_05.asm
;Created by RunningOn Chen.
;2003011434 J34 CS dept, THU
;2005-11-14
data segment
message db 'Input the number of beeps:$'
error_msg db 0dh, 0ah, 'Invalid number.', 0dh, 0ah, '$'
newline db 0dh, 0ah, '$'
data ends
code segment
main proc far
assume ds:data, cs:code
start:
mov ax, data
mov ds, ax
mov dx, offset message
mov ah, 09h
int 21h ;output string
mov ah, 01h
int 21h ;wait for input
cmp al, '0'
jb error
cmp al, '9'
ja error
sub al, '0'
mov cl, al ;cx = al
mov ch, 0h
cycle:
mov dl, 07h ;sound a beep
mov ah, 02h
int 21h ;output a char
push cx ;pause for a while
mov cx, 0ffffh
pause: mov bx, 01500h
pause2: dec bx
jnz pause2
loop pause
pop cx
loop cycle ;loop
mov dx, offset newline
mov ah, 09h
int 21h ;enter a new line
jmp exit
error:
mov dx, offset error_msg
mov ah, 09h
int 21h ;output error_msg
exit:
mov ax,4c00h
int 21h ;exit
main endp
code ends
end start
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -