简答题

用BIOS的中断调用作定时控制。要求每隔1.1s从键盘读一个字符并将该字符的ASCll码送入内存缓冲区,共读入10字符(最后一个字符为$,以便显示)

正确答案

源程序如下:
DATASEGMENT
CHARDB10DUP(?)
DATAENDS
CODESEGMENT
ASSUMECS:CODE,DS:DATA
MAINPROCPAR
PUSHDS
XORAX,AX
PUSHAX
MOVAX,DATA
MOVDS,AX
START:LEABX,CHAR;指向存储区
MOVCX,10;设计数
STI;开中断
LOPI:MOVAH,1
PUSHCX
MOVCX,0;设时间计数器为0
MOVDX,0
INT1AH
LOPZ:MOVAX,0;读时间计数值
INT1AH
CMPDL,20
JNZLOPZ
MOVAH,0;从键盘接收字符(以$结束)
INT16H
MOV[BX],AL;放入存储区
INCBX;修改指针
POPCX
L00PLOPI;循环
MOVDX,OFFSETCHAR;显示输入字符
MOVAH,9
INT21H
RET;返回DOS
MAINENDP
CODEENDS
ENDMAIN

答案解析

相似试题
  • 简述系统功能调用和BIOS中断的作用和一般调用方法。

    简答题查看答案

  • 某应用系统中,系统提供一个频率为20KHZ的时钟信号,要求每隔10ms完成一次扫描键盘的工作。为了提高CPU的效率,现采用定时中断的方式进行键盘扫描。在系统中采用了8253定时器的通道0来实现这一要求,且8253计数器0~2和控制寄存器的I/O地址依次为70H,71H,72H和73H。

    简答题查看答案

  • 某应用系统中,系统提供一个频率为20KHZ的时钟信号,要求每隔10ms完成一次扫描键盘的工作。为了提高CPU的效率,现采用定时中断的方式进行键盘扫描。在系统中采用了8253定时器的通道0来实现这一要求,且8253计数器0~2和控制寄存器的I/O地址依次为70H,71H,72H和73H。

    简答题查看答案

  • 某应用系统中,系统提供一个频率为20KHZ的时钟信号,要求每隔10ms完成一次扫描键盘的工作。为了提高CPU的效率,现采用定时中断的方式进行键盘扫描。在系统中采用了8253定时器的通道0来实现这一要求,且8253计数器0~2和控制寄存器的I/O地址依次为70H,71H,72H和73H。

    简答题查看答案

  • 某应用系统中,系统提供一个频率为20KHZ的时钟信号,要求每隔10ms完成一次扫描键盘的工作。为了提高CPU的效率,现采用定时中断的方式进行键盘扫描。在系统中采用了8253定时器的通道0来实现这一要求,且8253计数器0~2和控制寄存器的I/O地址依次为70H,71H,72H和73H。

    简答题查看答案

  • 用8253-5通道1作为DRAM刷新定时器,动态存储器要求在2ms内对全部128行存储单元刷新一遍,假定计数用的时钟频率为2MHz,问该通道应工作在什么方式?请写出控制字和计数值(用16进制数表示)。

    简答题查看答案

  • 用8253-5通道0对外部脉冲计数,每计满10000个产生一次中断。该通道应工作在什么方式?请写出工作方式控制字及计数值(用16进制数表示)。 

    简答题查看答案

  • DOS功能调用可完成对完成对文件、设备、内存的管理;BIOS的主要功能是()。

    填空题查看答案

  • BIOS中断设置光标位置的指令是()。

    单选题查看答案