2014微机原理实验题目及答案

2019-04-09 19:55

微机原理实验

1. 验收要求

(1)对于一个编辑好的任一汇编语言源程序,会进行编译和连接,最终生成

一个可执行程序。(DOS环境运行)

(2)对三个给定的题目进行验收。(在给出的仿真环境编辑和运行) 2. 题目 (1)排序

对输入的多个数字进行排序。 要求:

(a)所有数字从键盘输入;

(b)数字中至少包含一个大于10的数字; (c)排好序的数字以十进制形式在屏幕显示输出。 答案:

DATA SEGMENT

STRING1 DB 'Please Input the number: ','$' ;提示输入 STRING2 DB 'The order from max to min:','$' ;输出排序从大到小

SCORE DW 100 DUP(0) ;分配存放空间

DATA ENDS

STACK SEGMENT ;堆栈段 DW 64 DUP(0) STACK ENDS

CODE SEGMENT ;代码段

ASSUME CS:CODE,DS:DATA,SS:STACK START: MOV AX,DATA MOV DS,AX

MOV AX,STACK MOV SS,AX

MOV DX,OFFSET STRING1 ;显示提示输入 MOV AH,09H INT 21H

XOR BX,BX ;寄存器清零 XOR CX,CX XOR SI,SI XOR DI,DI

INPUT: MOV AH,1 ;输入一个字符 INT 21H

CMP AL,0DH ;是否为回车键 JZ OVER ;是就跳到OVER CMP AL,20H ;是否为空格 JZ SAVE ;是就跳到SAVE SUB AL,30H ;变为真数 MOV CL,4

SHL BX,CL ;左移四位,变为BCD码 ADD BL,AL JMP INPUT

SAVE: MOV SCORE[SI],BX ;保存到SCORE中 ADD SI,2 INC DI XOR BX,BX JMP INPUT

OVER: MOV SCORE[SI],BX ;保存最后一个数据,并存放到SCORE中 INC DI MOV DL,0AH MOV AH,02H

INT 21H MOV CX,DI DEC CX XOR BX,BX

COMP1: MOV SI,2 ;指向下一个数 MOV DX,CX

COMP2: MOV AX,SCORE[BX]

CMP AX,SCORE[BX+SI] ;比较前后两个数 JNC COMP3 ;小于就跳到COMP3 XCHG AX,SCORE[BX+SI] ;交换位置 MOV SCORE[BX],AX

COMP3: ADD SI,2 ;指向下一个数 DEC DX JNZ COMP2

ADD BX,2 ;指向下一个数 LOOP COMP1

MOV DX,OFFSET STRING2 MOV AH,09H INT 21H

SUB SI,SI ;把SI清零

OUT_PUT:

MOV BX,SCORE[SI] ;输出百位数 MOV DL,BH AND DL,0FH ADD DL,30H MOV AH,02H INT 21H

MOV DL,BL ;输出十位数

MOV CL,4 SHR DL,CL ADD DL,30H MOV AH,02H INT 21H

MOV DL,BL ;输出个位数 AND DL,0FH ADD DL,30H MOV AH,02H INT 21H

MOV DL,20H ;输出空格 MOV AH,02H INT 21H ADD SI,2 DEC DI

JNZ OUT_PUT

MOV AH,4CH ;返回DOS INT 21H

CODE ENDS END START (2)数制转换

将输入的一个数据以不同进制形式输出。 要求:

(a)所有数字从键盘输入;

(b)输入数据为任意一个小于十万的十进制数据;

(c)将所输入数据以十六进制在屏幕显示输出(即十进制转十六进制)。 答案:

DATA SEGMENT KEYBUFFER DB 100 DB ?

DB 100 DUP(?)

STRING1 DB \DATA ENDS CODE SEGMENT

ASSUME CS:CODE,DS:DATA,ES:DATA START: MOV AX,DATA MOV DS,AX MOV ES,AX

LEA DX,STRING1 ;显示提示输出 MOV AH,09H INT 21H MOV AH,0AH LEA DX,KEYBUFFER INT 21H

LEA SI,KEYBUFFER+1 CALL TRANS10TO16 CALL DISPCR CALL DISPAX CALL DISPCR MOV AX,BX CALL DISPAX MOV AH,4CH INT 21H

DISPAL PROC NEAR PUSH AX PUSH CX PUSH DX PUSH AX

MOV CL,4 ;处理高位十六进制数 SHR AL,CL


2014微机原理实验题目及答案.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:阮成发纵论“责任风暴”和“治庸计划”

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: