微机实验模版

发布时间 : 星期四 文章微机实验模版更新完毕开始阅读

10号功能为字符串输入功能 LEA DX,SRING ;将缓冲区偏移地址付给DX MOV AH,0AH INT 21H 3.总结如何实现字符及字符串的输入输出。 输入: 单字符输入:1,7,8功能号。其中7号和8号功能无回显,1号功能有回显。将功能号付给AH,然后由中断INT 21H进行输入。 字符串输入:0AH功能号。 首先建立缓冲区,将字符串偏移地址付给DX,将功能号付给AH,然后由中断INT 21H进行输入。 输出: 单字符输出:2,6,9号功能号。将要显示的字符付给DL,将功能号付给AH,由中断INT 21H,在显示器上输出。 字符串输出:9号功能号。该功能要求字符串必须以“$”字符作为结束符。将要显示的字符串的偏移地址付给DX,将功能号付给AH,由中断INT 21H,在显示器上输出。

《微机原理与接口技术》软件编程题目

每位同学,取自己学号的末尾数字N, 按照N%4后的序号选择对应的题目,如果答错题目,算没有完成本任务。

括号中的内容为对应题目在硬件平台实验中需完成的内容。 (0)、设MEM1中有一个任意字符串STRING,以ASCII码’$’结尾,假定MEM1中的字符串不会导致数据段的溢出,编写一个程序,在STRING中找到第一次出现“OK”这个字母序列的首地址,如果没有这个序列,则直接返回0,并在显示器(LED)上显示。

(1)用户从显示器(键盘)上输入一个1~9的数字,如果输入的不是数字或者输入的数字超过范围,则在显示器上提示用户重新输入,如果输入的数据为奇数,则对MEM1和MEM2中的多字节无符号数求和,如果输入的数据为偶数,则对MEM1和MEM2中的多字节无符号数求差(MEM1-MEM2,假定MEM1中的数据>MEM2中的数据),并将结果保存在MEM1中,将结果显示在显示器上(将最高的若干位显示在LED上)。

(2)、用户从显示器(键盘)上输入一个1~9的数字,如果输入的不是数字或者输入的数字超过范围,则在显示器上提示用户重新输入,如果输入的数据为奇数,则对MEM1和MEM2中的多字节压缩BCD码求和,如果输入的数据为偶数,则对MEM1和MEM2中的多字节压缩BC求差(MEM1-MEM2,假定MEM1中的数据>MEM2中的数据),并将结果保存在MEM1中,将结果显示在显示器上(将最高的若干位显示在LED上)。(郭珂的题目) (3)、设MEM1中有一个任意字符串STRING,以ASCII码’$’结尾,假定MEM1中的字符串不会导致数据段的溢出,编写一个程序,在STRING中找到第一次出现“v”这个字母首地址,将“v”之前的字符串保存到MEM2中,将“v”之后的字符串保存到MEM3中,在显示器上显示MEM2和MEM3的内容(在硬件实验中,根据用户输入1或2,显示MEM2和MEM3的前面几个字符)。

杨婉 2010302540239 9%4=1

data segment mem1 db 44h,33h,22h,'$' mem2 db 33h,22h,11h,'$' mem3 db 0,0,0,0,0,0,'$' string1 db 'please input a number between 1 and 9',0dh,0ah,'$'

string2 db 'please input a number between 1 and 9 again',0dh,0ah,'$' ; add your data here! ends stack segment dw 128 dup(0) ends code segment start: ; set segment registers: mov ax, data mov ds, ax mov es, ax

lea dx,string1 mov ah,9 int 21h check: mov ah,1 int 21h cmp al,'1' jl again cmp al,'9' jg again ;确认输入的是1-9的数字,若无效输入则进入again程序段,要求重新输入字符 and al,1h jnz add_12 jz sub_12

联系合同范文客服:xxxxx#qq.com(#替换为@)