基本上,我正在尝试制作一个简单的问答游戏,一旦提示问题,我需要为用户输入9秒计时器输入他们的答案,否则他们将失去游戏。我对汇编语言仍然很新,并希望寻求你们的帮助。
我尝试过使用:
mov ah,1h
int 21h
获取用户字符输入,基本上是a,b,c或d。
我还制作了一个循环9秒计时器,但我真的不知道把它放在哪里,因为我不能把它放在mov ah,1h
之上或之下,因为它会没有任何意义。
答案 0 :(得分:0)
您正在使用DOS或DOS模拟器进行测验 - 否则“int 21h”指令没有任何意义。
据我所知,DOS中没有允许等待给定时间输入的功能;所有功能都会无休止地等待。
您可以使用中断“int 16h”的BIOS功能AH = 0和AH = 1来查询键盘(AH = 1将检查是否按下了一个键,AH = 0将读取该键本身)。您可以使用中断“int 1Ah”的BIOS功能AH = 1来查询时间。
大多数DOS和BIOS中断都在Ralph Brown的中断列表中有详细记录: