微型计算机原理实验报告
微型计算机原理实验报告专业班级: 通信工程2013级 学生姓名: 周博文 学 号: 2013221105200097 完成时间: 2015月12月 实验一 运行并分析Hello World程序一、实验目的掌握用汇编语言设计、编写、调试和运行程序的方法。掌握debug程序的各种操作命令,熟悉程序的调试及其技巧。二、实验环境实验电脑操作系统为Windows 10-64位,没有debug.exe,所以下载安装了DOSBox 0.74,以及各种工具debug.exe、、link.exe、masm for windows集成实验环境2015。三、程序分析Hello world 程序源代码如下:DATAS SEGMENT STRING DB 'Hello World!',13,10,'$'DATAS ENDSCODES SEGMENT ASSUME CS:CODES,DS:DATASSTART: MOV AX,DATAS MOV DS,AX LEA DX,STRING MOV AH,9 INT 21H MOV AH,4CH INT 21HCODES ENDS END START此程序要完成的任务就是在电脑屏幕上输出一串字符:Hello World!四、代码注释DATAS SEGMENT ;定义数据段 就是数据存放的地方 STRING DB 'Hello World!',13,10,'$' ;定义一个字符串 其中13,10分别为回车符与换行符的ASCII值 $是字符串结束的标志DATAS ENDSCODES SEGMENT ;定义代码段 要执行的程序代码 ASSUME CS:CODES,DS:DATAS ;告诉编译器以后所有在CODES段中定义的变量寻址时,使用cs作为段地址START: MOV AX,DATAS ;把数据段的段地址取到AX中 MOV DS,AX ;把AX里面的数据赋到DS LEA DX,STRING ;取STRING偏移地址到DX MOV AH,9 ;给AH赋值9 INT 21H ;INT为中断调用 MOV AH,4CH ;给AH寄存器赋值4CH INT 21HCODES ENDSEND START五、实现功能此程序要完成的任务就是在电脑屏幕上输出一串字符:Hello World!六、运行结果运行结果如下图:实验二 编程将键盘输入的小写字母转换为大写字母输出一、实验目的学会编写与调试简单的汇编语言程序,学会如何用汇编语言实现大小写字母的转换以及从键盘输入数据指令、出书数据到屏幕等指令的用法。二、实验环境实验电脑操作系统为Windows 10-64位, DOSBox 0.74,以及各种工具debug.exe、、link.exe、masm for windows集成实验环境2015。三、程序分析与注释DATASEGMENT;定义数据段IBUFDB 1 ,0 ,1 DUP(0)DATAENDSCODESEGMENT;定义代码段ASSUME CS:CODE;告诉编译器以后所有在CODES段中定义的变量寻址时,使用cs作为段地址START:MOVAX,DATA ;把数据段的段地址取到AX中MOVDS,AXMOVAH,01H INT 21HCMPAL,'a' ;比较AL与'a'的值JBEXIT;若小于则跳CMPAL,'z' ;比较AL与'z'的值JAEXIT;若大于则跳SUBAL,20H ;减法运算MOVDL,ALMOVAH,2INT21H;中断调用JMPSTART;无条件跳 EXIT:MOVAH,4CHINT21HCODEENDSENDSTART四、实现功能编写程序,程序要实现从键盘输入小写字母,将消息的字母转换成大写字母并输出到屏幕上显示出来。五、运行结果本实验程序运行结果如下图所示:如上图,当从键盘输入小写a字母时,屏幕当即显示aA,继续输入b则屏幕显示bB,因而此程序实现了将输入的小写字母转换为大写字母并输出到屏幕的功能。实验三 交通灯控制实验(硬件实验)一、实验目的 通过并行接口8255实现十字路口交通灯的模拟控制,进一步掌握对并行口的使用。二、实验内容如图,L7、L6、L5作为南北路口的交通灯与PC7、PC6、PC5相连,L2、L1、L0作为东西路口的交通灯与PC2、PC1、PC0相连。编程使六个灯按交通灯变化规律亮灭。三、编程提示十字路口交通灯的变化规律要求:(1) 南北路口的绿灯、东西路口的红灯同时亮30秒左右。(2) 南北路口的黄灯闪烁若干次,同时东西路口的红灯继续亮。(3) 南北路口的红灯、东西路口的绿灯同时亮30秒左右。(4) 南北路口的红灯继续亮、同时东西路口的黄灯亮闪烁若干次。(5) 转(1)重复。 四、代码及注