微机原理实验(50页).doc
《微机原理实验(50页).doc》由会员分享,可在线阅读,更多相关《微机原理实验(50页).doc(50页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-微型计算机原理实验报告学号 40953055姓名 海米提。热合木江班级 测控0902班实验一 显示程序实验一般来说,程序需要显示输出提示运行的状况和结果,有的还需要将数据区中的内容显示在屏幕上。本实验要求将指定数据区的数据以十六进制数形式显示在屏幕上,并通过DOS功能调用完成一些提示信息的显示。实验中可使用DOS功能调用(INT 21H)。流程图2.试验程序DATA SEGMENT MES DB Show a as hex:, 0AH,0DH,$ SD DB a DATA ENDS CODE SEGMENT ASSUME CS:CODE, DS:DATA START: MOV AX, DAT
2、A MOV DS, AX MOV DX, OFFSET MES MOV AH, 09H INT 21H MOV DI, OFFSET SD MOV AL, DS:DI AND AL, 0F0H SHR AL,4 CMP AL, 0AH JB C2 ADD AL, 07H C2: ADD AL, 30H MOV DL, AL MOV AH, 02H INT 21H MOV AL, DS:DI AND AL, 0FH CMP AL, 0AH JB C3 ADD AL, 07H C3: ADD AL, 30H MOV DL, AL MOV AH, 02H INT 21H MOV AX, 4C00H
3、INT 21H CODE ENDS END START实验二 数据传送实验三、实验内容将数据段中的一个字符串传送到附加段中,并输出附加段中的目标字符串到屏幕上1. 试验程序DATA SEGMENT MSR DB HELLO,WORLD!$ LEN EQU $- MSR DDATA ENDS EXDA SEGMENT MSD DB LEN DUP(?) EXDA ENDS MYSTACK SEGMENT STACK DW 20 DUP(?) MYSTACK ENDS CODE SEGMENT ASSUME CS:CODE, DS:DDATA, ES:EXDA START: MOV AX, DDA
4、TA MOV DS, AX MOV AX, EXDA MOV ES,AX MOV SI, OFFSET MSR MOV DI, OFFSET MSD MOV CX, LEN NEXT: MOV AL, SI MOV ES:DI, AL INC SI INC DI DEC CX JNZ NEXT PUSH ES POP DS MOV DX, OFFSET MSD MOV AH, 9 INT 21H MOV AX, 4C00H INT 21H CODE ENDS END START MOV BX, 0 MOV CX, LEN NEXT: MOV AL, MSRBX MOV ES:MSDBX, AL
5、 INC BX LOOP NEXT2.实验结果实验三 数码转换程序实验1 将ASCII码表示的十进制数转换为二进制数1. 流程图2.试验程序 DATAS SEGMENT NUMBER DB 00012 DATAS ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATAS START: MOV AX,DATAS MOV DS,AX MOV CX,4 MOV SI,OFFSET NUMBER MOV AL,SI SUB AL,30H MOV AH,00H MOV BL,10 L1: MUL BL ADD AL,SI+1 SUB AL,30H INC SI DEC CX J
6、NZ L1 MOV CX,8 MOV BL,AL NEXT: SHL BL,1 JC ONE MOV DL,30H JMP EXIT ONE: MOV DL,31H EXIT: MOV AH,02H INT 21H DEC CX JNZ NEXT MOV AH,4CH INT 21H CODE ENDS END START3.实验结果2 将十进制数的ASCII码转换为BCD码本实验要求将键盘输入的一个五位十进制数54321的ASCII码存放入数据区中,转换为 BCD 码后,并将转换结果按位分别显示于屏幕上。若输入的不是十进制数的ASCII码,则输出“FF”。提示:一字节ASCII码取其低四位即
7、变为BCD码 1. 实验流程图2.实验程序DATAS SEGMENT BUF DB 6 DB ? DB 6 DUP(?) BUFE DB FF$ DATAS ENDS CODE SEGMENT ASSUME DS:DATAS,CS:CODE START: MOV AX,DATAS MOV DS,AX MOV DX,OFFSET BUF MOV AH,10 INT 21H MOV CH,5 MOV SI,DX L2: MOV BL,SI+2 INC SI CMP BL,39H JA L1 SUB BL,30H AND BL,0FH MOV DH,4 MOV CL,4 ;SHL AL,CL ROL
8、 BL,CL NEXT: SHL BL,1 JC ONE MOV DL,30H JMP EXIT ONE: MOV DL,31H EXIT: MOV AH,2 INT 21H DEC DH JNZ NEXT DEC CH JNZ L2 JMP L3 L1: MOV DX,OFFSET BUFE MOV AH,9 INT 21H L3: MOV AH,4CH INT 21H CODE ENDS END START3.实验结果 3将十六进制数的ASCII码转换为十进制数 十六位二进制数的值域为0-65535,最大可转换为五位十进制数。五位十进制数可表示为:ND=D4104+D3103+D2102+
9、D110+D0 因此,将十六位二进制数转换为五位ASCII码表示的十进制数,就是求D1-D4,并将它们转化为ASCII码。本实验要求将缓冲区中存放的000CH的ASCII码转换成十进制数,并将转结果显示在屏幕1. 实验流程图2. 实验程序DATA SEGMENT BUF DB 5 DB ? DB 5 DUP(?) HEX DB 4 DUP(?) DECI DB 5 DUP(0),$ S1 DB 16JINZHI : $ S2 DB 0AH,0DH,10JINZHI : $ DATA ENDS CODE SEGMENT ASSUME CS:CODE, DS:DATA START: MOV AX,
10、DATA MOV DS,AX LEA DX,S1 MOV AH,9 INT 21H LEA DX,BUF MOV AH,10 INT 21H MOV SI,2 MOV DI,0 CHECK: MOV AL,SIBUF CMP AL,40H JS NUM CMP AL,47H JS CAPITAL SUB AL,57H JMP STORE NUM: SUB AL,30H JMP STORE CAPITAL: SUB AL,37H JMP STORE STORE: MOV HEXDI,AL INC DI INC SI CMP DI,4 JNZ CHECK LEA DX,S2 MOV AH,9 IN
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 实验 50
限制150内