您的当前位置:首页广东工业大学微机实验报告实验四显示程序设计实验

广东工业大学微机实验报告实验四显示程序设计实验

2021-11-09 来源:乌哈旅游


实验四 显示程序设计实验

一、 实验目的

1) 了解INT 10H、INT 21H部分功能号的功能和使用方法 2) 掌握字符方式下PC显示器的显示控制

二、 实验内容

INT 21H功能应用(1)

题目:在显示器上显示A~Z共26个英文字母 实验步骤:

1) 输入程序并检查无误,经汇编、连接后装入。

2) 在DOS状态下运行:将程序存放在D盘,在PC上单击“开始”→“运行” →“输入

debug d:\\文件名.exe↓”,G↓运行实验程序,并观察实验结果。 实验结果:

三、 编程练习

题目:在内存中定义一组8位无符号二进制数。在屏幕上显示“Input a binary number:”,键入一个8位二进制数。在上述数组中搜索是否由此数据,有,则显示Found;否则,显示No Found。重复,直到键入回车符后程序退出。重复,直到按键后结束程序。 程序框图如下:

开始 输入数组大小x 定义数组NUM 键入一个二进制数a i=1 取数组第i个数NUM[i] Y NUMBER[i]=a? Y i++ i<=x? N 显示No Found N 显示Found 结束

程序清单:

STACKS SEGMENT STACK ;堆栈段

DW 128 DUP(?) ;注意这里只有128个字节 STACKS ENDS DATAS SEGMENT ;数据段 ;请在这里定义您的数据

NUM DB 12H,36H,4FH,5EH,39H,95H,88H VA0 DB 'INPUT A BINARY NUMBER:$' VA1 DB 'FOUND',13,10,'$'

VA2 DB 'NO FOUND', 13, 10,'$' DATAS ENDS

CODES SEGMENT ;代码段 ASSUME CS:CODES,DS:DATAS START: MOV AX,DATAS ;初始化 MOV DS,AX ;请在这里添加您的代码

A0: MOV DX,OFFSET VA0 MOV AH,09H

INT 21H ;显示字符串“Input a binary number” MOV CX,0008H

LEA SI,NUM ;装载数组有效地址 MOV BL,0 MOV BH,04H A1: MOV AH,01H INT 21H

CMP AL,0DH JZ OVER DEC CX SUB AL,30H SAL AL,CL A2:

ADD BL,AL INC CX LOOP A1

MOV DL,[SI]

CMP BL,DL JNZ A3

MOV DX, OFFSET VA1 MOV AH, 09H

INT 21H ;找到,显示“Found” JMP A0 A3: INC SI DEC BH JNZ A2

MOV DX, OFFSET VA2 MOV AH, 09H

INT 21H ;找不到,显示“No Found” JMP A0

OVER: MOV AX,4C00H ;退出程序 INT 21H CODES ENDS

END START 操作步骤:

1) 输入程序检查无误,经汇编、连接后装入

2) 在DOS状态下运行:将程序存放在D盘,在PC上单击“开始”→“运行” →“输入debug d:\\文件名.exe↓”,G↓运行实验程序,输入一个二进制数并观察实验结果。 程序运行结果:

四、 实验心得

通过本次实验,我了解了INT 10H以及INT 21H部分功能号的功能和使用方法,同时也掌握字符方式下PC显示器的显示控制。本实验比以往的实验难度大了一些,不过预先已经编好了程序,所以完成得也很快。

因篇幅问题不能全部显示,请点此查看更多更全内容