西电微机原理上机

西电微机原理上机
西电微机原理上机

4.37 (上机题)编写程序实现,将缓冲区BUFFER中的100个字按递增排序,并按下列格式顺

序显示:

数据1 <原序号>

数据2 <原序号>

……

算法流程图:

调试问题、心得体会:

通过这道题,熟悉了流程图画法,掌握了产生随机数,“冒泡法”排序,子函数编写调用等的基本过程,尤其对于中断调用,并利用ASCII码回显和对课本字节型数据“冒泡法”排序改进为字形排序的过程,是我受益匪浅。并且亲身实践了源程序的汇编、调试也连接。

问题:将字节型冒泡法直接应用于该题,导致出错,该题存储的是字型数据!

原因在于只是排列的AL中的数值,并不是产生的随机数!

同时对于字型与字节型在运算类指令中的应用还是有误,以及其他的一些小错误,应加以改善!

运行结果:

程序代码:

STACK SEGMENT STACK 'STACK'

DW 100H DUP(?)

TOP LABEL WORD

STACK ENDS

DATA SEGMENT

BUFFER LABEL WORD

X=17

REPT 100

X=(X+80)mod 43

DW X

ENDM

BUF DW 100 DUP(?)

DATA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA,ES:DATA,SS:STACK START:

MOV AX,DATA

MOV DS,AX

MOV ES,AX

MOV AX,STACK

MOV SS,AX

LEA SP,TOP

MOV CX,100

LEA SI,BUFFER

LEA DI,BUF

L1:

MOV AX,[SI]

INC SI

INC SI

MOV [DI],AX

INC DI

INC DI

LOOP L1

MOV CX,100

DEC CX

LEA SI,BUFFER

PUSH CX

ADD CX,CX

ADD SI,CX

POP CX

L2:

PUSH CX

PUSH SI

L3:

MOV AX,[SI]

CMP AX,[SI-2]

JAE NOXCHG

XCHG AX,[SI-2]

MOV [SI],AX

NOXCHG:

LOOP L3

POP SI

POP CX

LOOP L2

MOV CX,100

LEA SI,BUFFER L4:

MOV AX,[SI] CALL DISPAX ADD SI,2

CALL XIAOYU CALL XUHAO

CALL DAYU

CALL DISPCR LOOP L4

MOV AH,4CH

MOV AL,0

INT 21H DISPAX PROC NEAR

PUSH AX

PUSH BX

PUSH CX

PUSH DX

PUSH DI

MOV BX,10

MOV CX,3

L7:

XOR DX,DX

DIV BX

MOV [DI],DX INC DI

INC DI

LOOP L7

MOV CX,3

L8:

DEC DI

DEC DI

MOV AL,[DI] ADD AL,30H

MOV AH,02

MOV DL,AL

INT 21H

LOOP L8

POP DX

POP CX

POP BX

POP AX

RET DISPAX ENDP DISPCR PROC NEAR PUSH AX

PUSH DX

MOV AH,2

MOV DL,0AH INT 21H

MOV AH,2

MOV DL,0DH INT 21H

POP DX

POP AX

RET DISPCR ENDP XIAOYU PROC NEAR PUSH AX

PUSH DX

MOV AH,02 MOV DL,3CH INT 21H

POP DX

POP AX

RET XIAOYU ENDP XUHAO PROC NEAR PUSH AX

PUSH BX

PUSH CX

PUSH SI

MOV CX,100 MOV BX,AX LEA SI,BUF L5:

CMP BX,[SI] JZ L6

ADD SI,2

LOOP L5

L6:

MOV AX,101

SUB AX,CX

CALL DISPAX

POP SI

POP CX

POP BX

POP AX

RET

XUHAO ENDP

DAYU PROC NEAR

PUSH AX

PUSH DX

MOV AH,02

MOV DL,3EH

INT 21H

POP DX

POP AX

RET

DAYU ENDP

CODE ENDS

END START

4.38 (上机题)按同余法产生一组随机数N(1

的成绩,要求编程实现计算每个同学的平均成绩,并根据平均成绩统计全班的成绩各等级的人数(A:90~100,B:80~89,C:70~79,D:66~69,E:60~65,F:60分以下),按下列格式显示:

Total <总人数>

A: <人数1>

B: <人数2>

C: <人数3>

D: <人数4>

E: <人数5>

F: <人数6>

算法流程图:

调试问题、心得体会:

通过该问题,进一步练习了通过流程图分析设计程序的功能,掌握了随机数产生,子函数调用,分支程序,循环程序,中断调用等过程,进行了调试,找出了数值无法转化为十进制并显示的问题,原因在于未定义临时存储单元。最后进行了汇编,链接等,得到了最终结果。问题1:NUMEER(用来存储各等级人数)存储单元清零后,忘记让DI再次指向其首地址,也就是各成绩等级的人数并未存入NUMBER,因此显示的都是0

改正后得到正确结果!

问题2:直接照搬课本数值转换子程序,未定义临时存储单元DECIMAL,导致编译出错,出现语法错误!

改正后得到正确结果!

运行结果:

程序代码:

STACK SEGMENT STACK 'STACK'

DW 100H DUP(?)

TOP LABEL WORD

STACK ENDS

DATA SEGMENT

BUFFER LABEL BYTE

X=17

REPT 225

X=(X+97)mod 50

ENDM

BUF DB 45 DUP(?)

NUMBER DW 6 DUP(?)

TOTAL DB 54H,6FH,74H,61H,6CH

LETTER DB 41H,42H,43H,44H,45H,46H

DECIMAL DB 5 DUP(?)

DATA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA,ES:DATA,SS:STACK START:

MOV AX,DATA

MOV DS,AX

MOV ES,AX

MOV AX,STACK

MOV SS,AX

LEA SP,TOP

LEA SI,BUFFER

LEA DI,BUF

MOV CX,45

L1:

PUSH CX

MOV CX,5

XOR AX,AX

L2:

MOV BL,[SI]

MOV BH,0

ADD AX,BX

ADD AX,50

INC SI

LOOP L2

POP CX

MOV BL,5

DIV BL

MOV [DI],AL

INC DI

LOOP L1

LEA SI,BUF

LEA DI,NUMBER

MOV CX,6

MOV AX,0

L3:

MOV [DI],AX

INC DI

LOOP L3

MOV CX,45

MOV BX,1

LEA DI,NUMBER L4:

MOV AL,[SI]

CMP AL,90

JAE LA

CMP AL,80

JAE LB

CMP AL,70

JAE LC

CMP AL,66

JAE LD

CMP AL,60

JAE LM

ADD [DI+10],BX JMP L5

LA:

ADD [DI],BX

JMP L5

LB:

ADD [DI+2],BX JMP L5

LC:

ADD [DI+4],BX JMP L5

LD:

ADD [DI+6],BX JMP L5

LM:

ADD [DI+8],BX L5:

INC SI

LOOP L4

LEA SI,TOTAL MOV CX,5

L6:

MOV AH,02

MOV DL,[SI]

INT 21H

INC SI

LOOP L6

CALL KONGGE CALL XIAOYU MOV AX,45

CALL DISPAX CALL DAYU

CALL DISPCR MOV CX,6

LEA SI,LETTER LEA DI,NUMBER L7:

MOV AH,02

MOV DL,[SI] INT 21H

INC SI

MOV AH,02

MOV DL,3AH

INT 21H

CALL KONGGE CALL XIAOYU MOV AX,[DI] CALL DISPAX INC DI

INC DI

CALL DAYU

CALL DISPCR LOOP L7

MOV AH,4CH

MOV AL,0

INT 21H KONGGE PROC NEAR

PUSH AX

PUSH DX

MOV AH,02

MOV DL,20H

INT 21H

POP DX

POP AX

RET

KONGGE ENDP

DISPCR PROC NEAR

PUSH AX

PUSH DX

MOV AH,2

MOV DL,0AH

INT 21H

MOV AH,2

MOV DL,0DH

INT 21H

POP DX

POP AX

RET

DISPCR ENDP

XIAOYU PROC NEAR

PUSH AX

PUSH DX

MOV AH,02

MOV DL,3CH

INT 21H

POP DX

POP AX

RET

XIAOYU ENDP

DAYU PROC NEAR

PUSH AX

PUSH DX

MOV AH,02

MOV DL,3EH

INT 21H

POP DX

POP AX

RET

DAYU ENDP

DISPAX PROC NEAR

PUSH AX

PUSH BX

PUSH CX

PUSH DX

PUSH DI

LEA DI,DECIMAL CALL TRANS16TO10 MOV CX,5

LEA DI,DECIMAL+4 MOV AH,2 DISPAX2:

MOV DL,[DI]

ADD DL,30H

DEC DI

INT 21H

LOOP DISPAX2

POP DI

POP DX

POP CX

POP BX

POP AX

RET

DISPAX ENDP

TRANS16TO10 PROC NEAR

PUSH AX

PUSH BX

PUSH CX

PUSH DX

PUSH DI

MOV BX,10

MOV CX,5

TRANS1:

XOR DX,DX

DIV BX

MOV [DI],DL

INC DI

LOOP TRANS1

POP DI

POP DX

POP CX

POP BX

POP AX

RET

TRANS16TO10 ENDP

CODE ENDS

END START

4.39 (上机题)编写程序实现下列5项功能,通过从键盘输入1~5进行菜单式选择:

(1)按数字键“1”,完成将字符串中的小写字母变换成大写字母。用户输入由英文大小写字母或数字0~9组成的字符串(以回车结束),变换后按下列格式在屏幕上显示: <原字符串>例如:abcdgyt0092

<新字符串> ABCDGYT0092

按任一键重做;按Esc键返回主菜单。

(2)按数字键“2”,完成在字符串中找最大值。用户输入由英文大小写字母或数字

0~9组成的字符串(以回车结束),找出最大值后按下列格式在屏幕上显示:

<原字符串> The maximum is <最大值>.

按任一键重做;按Esc键返回主菜单。

(3)按数字键“3”,完成输入数据组的排序。用户输入一组十进制数值(小于255),

然后变换成十六进制数,并按递增方式进行排序,按下列格式在屏幕上显示:

<原数值串>

<新数值串>

按任一键重做;按Esc键返回主菜单。

(4)按数字键“4”,完成时间的显示。首先提示用户对时,即改变系统的定时器HH:MM:SS(以冒号间隔,回车结束),然后在屏幕的右上角实时显示出时

间:HH:MM:SS。

按任一键重新对时;按Esc键返回主菜单。

(5)按数字键“5”,结束程序的运行,返回操作系统。

程序流程图:

主函数:功能1:

功能2:功能3:

功能4:

调试问题、心得体会:

此程序共5个功能,采用跳转表法来实现多路分支结构程序设计。现将这5个程序段,各程序段的首地址分别标号。将5个程序段的入口地址做成表TABLE放入数据段,程序根据给定的参数计算出欲转入的程序段的首地址在TABLE中的位置后,取出该地址,跳转至该程序段。然后执行该程序段功能。执行完后根据选择决定是重复执行改程序还是跳出选择其他程序执行。

问题1:

未在输入字符串末尾加上'$',导致出错,将后续存储区域的混乱字符全部显示出来!

修改:MOV BYTE PTR [BX], '$' ; 在输入字符串尾加结束标志$

问题2:排序子函数出现问题

各数值只转化为16进制,并未排序,调用过程出现问题!问题3:实现显示位置不对,未设置显示位置坐标!

改正后得到正确结果!

运行结果:

主函数:

功能1:

功能2:

功能3:

功能4:

功能5:

程序代码:

STACK SEGMENT STACK

DB 256 DUP(?)

TOP LABEL WORD

STACK ENDS

DATA SEGMENT

TABLE DW L1, L2, L3, L4, L5

STRING1 DB '1. Change string;', 0DH, 0AH, '$' STRING2 DB '2. Find the maximum ;', 0DH, 0AH, '$' STRING3 DB '3. Rank;', 0DH, 0AH, '$'

STRING4 DB '4. Time;', 0DH, 0AH, '$'

STRING5 DB '5. Exit.', 0DH, 0AH, '$'

STRINGN DB 'Input the number 1-5 : $'

STRBUF DB 'Input the string:', 0DH, 0AH, '$'

MAXCHR DB 'The maximum is $'

NUMBER DB 'Input the numbers: ', 0DH, 0AH, '$'

TIMES DB 'Correct the time (HH:MM:SS) : $'

STRBUF2 DB 'Press ESC to exit; or press any key to continue$' KEYBUF DB 61

DB ?

DB 61 DUP (?)

NUMBUF DB ?

DB 20 DUP (?)

DATA ENDS

CODE SEGMENT

ASSUME CS:CODE, DS:DATA, SS:STACK

START:

MOV AX, DATA

MOV DS, AX

MOV AX, STACK

MOV SS, AX

LEA SP, TOP

MAIN: CALL FAR PTR MENU

AGAIN:

MOV AH, 2

MOV BH, 0

MOV DL, 41

MOV DH, 10

INT 10H

MOV AH, 1

INT 21H

CMP AL, '1'

JB AGAIN

CMP AL, '5'

JA AGAIN

SUB AL, '1'

SHL AL, 1

CBW

LEA BX, TABLE

ADD BX, AX

JMP WORD PTR [BX]

L1:

CALL FAR PTR CHGLTR

MOV AH, 8

INT 21H

CMP AL, 1BH

JZ MAIN

JMP L1

L2:

CALL FAR PTR MAXLTR

MOV AH, 8

INT 21H

CMP AL, 1BH

JZ MAIN

JMP L2

L3:

CALL FAR PTR SORTNUM

MOV AH, 8

INT 21H

CMP AL, 1BH

JZ MAIN

JMP L3

L4:

CALL FAR PTR TIMCHK

MOV AH, 8

INT 21H

CMP AL, 1BH

JZ MAIN

JMP L4

L5:

MOV AH, 4CH

INT 21H

MENU PROC FAR ;设置显示器方式MOV AH, 0

MOV AL, 3;

MOV BL, 0;

INT 10H

MOV AH, 2

MOV BH, 0

MOV DL, 5

MOV DH, 5

INT 10H

MOV AH, 9

LEA DX, STRING1

INT 21H

MOV AH, 2

MOV DL, 5

MOV DH, 6

INT 10H

西电微机原理大作业

科目:微机原理与系统设计授课老师:李明、何学辉 学院:电子工程学院 专业:电子信息工程 学生姓名: 学号:

微机原理硬件设计综合作业 基于8086最小方式系统总线完成电路设计及编程: 1、扩展16K字节的ROM存储器,起始地址为:0x10000; Intel 2764的存储容量为8KB,因此用两片Intel 2764构成连续的RAM存储区域的总容量为2 8KB=16KB=04000H,鉴于起始地址为10000H,故最高地址为 10000H+04000H-1=13FFFH 电路如图

2、扩展16K 字节的RAM 存储器,起始地址为:0xF0000; Intel 6264的存储容量为8KB ,因此用两片Intel 6264构成连续的RAM 存储区域的总容量为2 8KB=16KB=04000H ,鉴于起始地址为F0000H ,故最高地址为 F0000H+04000H-1=F3FFFH 片内地址总线有13根,接地址总线的131~A A ,0A 和BHE 用于区分奇偶片,用74LS155作译码电路,如图所示 3、设计一片8259中断控制器,端口地址分别为:0x300,0x302; 鉴于端口地址分别是300H 和302H ,可将82590A 接到80861A ,其他作译码。电路如图:

4、设计一片8253定时控制器,端口地址分别为:0x320,0x322,x324,0x326; 根据端口地址可知,825301,A A 应该分别接到8086的12,A A ,其余参与译码。电路如图:

5、设计一片8255并行接口,端口地址分别为:0x221,0x223,x225,0x227; 由于端口地址为奇地址,8086数据总线应该接158~D D ,且BHE 参与译码。根据端口地址可得825501,A A 应该分别接到8086的12,A A ,其余参与译码。电路如图:

西电微机原理2010试题

西安电子科技大学微机原理试题 姓名学号总分 一.填空题(每空1分,共30分) 1)15的8位二进制补码为,-15的8位二进制补码为。 2)某8位二进制补码为80H,其十进制表示为。 3)字符B的ASCII码为,字符0的ASCII码为。 4)8086CPU总线按功能可分为数据总线,总线和总线。 5)8086CPU数据总线包含条数据线,最多可寻址的存储器容量为。 6)CPU内部用于计算的部分为,用于保存下一条要执行的指令地址的 为。 A) 程序状态字B) 程序计数器C) ALU D) 工作寄存器 7)经常用作循环次数的寄存器是,用于I/O端口寻址的寄存器是。 A) AX B) BX C) CX D) DX 8)指令MOV CX, 1000的结果是CH= 。 9)将0D787H和4321H相加后,标志位CF= ,SF= ,ZF= , OF= ,AF= ,PF= 。 10)寄存器SI中能够表示的最大有符号数为,最小有符号数为。 11)设(DS)=4000H,(BX)=0100H,(DI)=0002H,(4002)=0A0AH,(40100)=1234H,(40102) =5678H,求以下指令分别执行后AX寄存器的值。 MOV AX , [2] (AX)= 。 MOV AX , [BX] (AX)= 。 MOV AX , [BX][DI] (AX)= 。 MOV AX , 1[BX] (AX)= 。 12)用一条指令将AX寄存器低四位清零,其余位不变:。 13)用一条指令将AX寄存器高四位取反,其余位不变:。 14)用一条指令将AX高8位与低8位交换:。 15)用一条指令将AL中的大写字母变成相应的小写:。 二.判断题(每题1分,共10分) 以下语句是语法正确的打√,语法错误打×,其中TABLE和TAB为两个字节类型的变量。 1)MOV DS , 1000H 2)MOV DS , TABLE 3)MOV [1200H] , [1300H] 4)ADD AX , BX , CX 5)XCHG AL , CL 6)CALL AL 7)MUL AX , BX 8)JU L1 9)SHR CL , CL

西电微机原理上机作业第三

微机上机作业三 容: 编写如下程序,并在机器上调试成功。程序采用菜单式选择,可以接收用户从键盘输入的五个命令(1-5),各命令功能分别为: (1)按下“1”键,完成字符串小写字母变成大写字母。 (2)按下“2”键,完成找最大值(二选一)。 (3)按下“3”键,完成排序(二选一)。 (4)按下“4”键,显示时间。 (5)按下“5”键,结束程序运行,返回系统提示符。 汇编程序: STACK SEGMENT STACK DB 256 DUP(?) TOP LABEL WORD STACK ENDS DATA SEGMENT TABLE DW G1, G2, G3, G4, G5 STRING0 DB' Form the school ID is 02111460 Li Cheng',0DH,0AH,'$' STRING1 DB '1. Change small letters into capital letters of string;', 0DH, 0AH, '$' STRING2 DB '2. Find the maximum of string;', 0DH, 0AH, '$' STRING3 DB '3. Sort for datas;', 0DH, 0AH, '$' STRING4 DB '4. Show Time;', 0DH, 0AH, '$' STRING5 DB '5. Exit.', 0DH, 0AH, '$' STRINGN DB 'Input the number you select (1-5) : $' IN_STR DB 'Input the string (including letters & numbers, less than 60 letters) :', 0DH, 0AH, '$' PRESTR DB 'Original string : $' NEWSTR DB 'New string : $' OUT_STR DB 'The string is $' MAXCHR DB 'The maximum is $' IN_NUM DB 'Input the numbers (0 - 255, no more than 20 numbers) : ', 0DH, 0AH, '$' OUT_NUM DB 'Sorted numbers : ', 0DH, 0AH, '$' IN_TIM DB 'Correct the time (HH:MM:SS) : $' HINTSTR DB 'Press ESC, go back to the menu; or press any key to play again!$' KEYBUF DB 61 DB ? DB 61 DUP (?) NUMBUF DB ? DB 20 DUP (?) DATA ENDS

西电微机原理实验报告

微机系统实验报告 班级:031214 学号:03121370 姓名:孔玲玲 地点:E-II-312 时间:第二批

实验一汇编语言编程实验 一、实验目的 (1)掌握汇编语言的编程方法 (2)掌握DOS功能调用的使用方法 (3)掌握汇编语言程序的调试运行过程 二、实验设备 PC机一台。 三、实验内容 (1)将指定数据区的字符串数据以ASCII码形式显示在屏幕上,并通过DOS功能 调用完成必要提示信息的显示。 (2) 在屏幕上显示自己的学号姓名信息。 (3)循环从键盘读入字符并回显在屏幕上,然后显示出对应字符的ASCII码,直到 输入“Q”或“q”时结束。 (4)自主设计输入显示信息,完成编程与调试,演示实验结果。 考核方式:完成实验内容(1)(2)(3)通过, 完成实验内容(4)优秀。 实验中使用的DOS功能调用:INT 21H 表3-1-1 显示实验中可使用DOS功能调用 AH 值功能调用参数结果 1 键盘输入并回显AL=输出字符 2 显示单个字符(带Ctrl+Break检查) DL=输出字符光标在字符后面 6 显示单个字符(无Ctrl+Break检查) DL=输出字符光标在字符后面 8 从键盘上读一个字符AL=字符的ASCII码 9 显示字符串DS:DX=串地址,‘$’为结束字符光标跟在串后面 4CH 返回DOS系统AL=返回码

四、实验步骤 (1)运行QTHPCI软件,根据实验内容编写程序,参考程序流程如图3-1-1所示。 (2)使用“项目”菜单中的“编译”或“编译连接”命令对实验程序进行编译、连接。 (3)“调试”菜单中的“进行调试”命令进入Debug调试,观察调试过程中数据传输指令执行后各寄存器及数据区的内容。按F9连续运行。 (4)更改数据区的数据,考察程序的正确性。 五、实验程序 DATA SEGMENT BUFFER DB '03121370konglingling:',0AH,0DH,'$' BUFFER2 DB 'aAbBcC','$' BUFFER3 DB 0AH,0DH,'$' DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DA TA START: MOV AX,DA TA MOV DS,AX mov ah,09h mov DX,OFFSET BUFFER int 21h

西电微机原理上机

4.37 (上机题)编写程序实现,将缓冲区BUFFER中的100个字按递增排序,并按下列格式顺 序显示: 数据1 <原序号> 数据2 <原序号> …… 算法流程图: 调试问题、心得体会: 通过这道题,熟悉了流程图画法,掌握了产生随机数,“冒泡法”排序,子函数编写调用等的基本过程,尤其对于中断调用,并利用ASCII码回显和对课本字节型数据“冒泡法”排序改进为字形排序的过程,是我受益匪浅。并且亲身实践了源程序的汇编、调试也连接。 问题:将字节型冒泡法直接应用于该题,导致出错,该题存储的是字型数据!

原因在于只是排列的AL中的数值,并不是产生的随机数! 同时对于字型与字节型在运算类指令中的应用还是有误,以及其他的一些小错误,应加以改善! 运行结果: 程序代码: STACK SEGMENT STACK 'STACK' DW 100H DUP(?) TOP LABEL WORD STACK ENDS DATA SEGMENT BUFFER LABEL WORD

X=17 REPT 100 X=(X+80)mod 43 DW X ENDM BUF DW 100 DUP(?) DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,ES:DATA,SS:STACK START: MOV AX,DATA MOV DS,AX MOV ES,AX MOV AX,STACK MOV SS,AX LEA SP,TOP MOV CX,100 LEA SI,BUFFER LEA DI,BUF L1: MOV AX,[SI] INC SI INC SI MOV [DI],AX INC DI INC DI LOOP L1 MOV CX,100 DEC CX LEA SI,BUFFER PUSH CX ADD CX,CX ADD SI,CX POP CX L2: PUSH CX PUSH SI L3: MOV AX,[SI] CMP AX,[SI-2] JAE NOXCHG XCHG AX,[SI-2] MOV [SI],AX NOXCHG:

西电机电院微机原理上机答案

汇编语言上机题 姓名:学号:成绩: 实验一、上机过程及DEBUG应用 编写程序,建立数据段DATA,将你的姓名(汉语拼音)及学号存入DATA数据段的BUFFER1区域,然后利用程序将BUFFER1区域中的字符串(姓名及学号)依次传送到从BUFFER2开始的内存区域中去。 上机过程与要求 1.建立原程序: 源程序文件名为,源程序清单如下: data segment buffer1 db 'hepan04105038' buffer2 db 13 dup() data ends code segment ASSUME CS:CODE,DS:DATA START: mov ax,data mov ds,ax mov es,ax lea si,buffer1 lea di,buffer2 mov cx,0d cld rep movsb mov ah,4ch int 21h code ends end start 2.汇编后生成的obj文件名为buffer .OBJ 3.连接后生成的目标文件名为buffer .EXE 4.DEBUG调试:在DEBUG下,利用U、D、G、R等命令对EXE文件进行调试后,相关信息如下: (1)表1-1 反汇编清单中所反映的相关信息 *注:最后一条指令是对应于代码段中最后一条指令 (2)在未执行程序之前,用D命令显示内存区域BUFFER1及BUFFER2中的内容, 其相关信息如表1-2所示。 表1-2 未执行程序之前的数据区内容

(3)执行程序以后用D命令显示内存区域的相关信息,如表1-3。 表1-3 执行程序之后的数据区内容 (4)用R命令检查寄存器的内容如表1-4所示。 回答问题 a)宏汇编命令MASM的作用是什么 答:产生OBJ文件。 b)连接命令LINK的作用是什么连接后生成什么文件 答:产生EXE文件,生成EXE文件。 c)DEBUG下U命令的作用是什么 答:反汇编被调试命令。 d)DEBUG下D命令的作用是什么 答:显示内存单元的内容。 e) 在DEBUG下如何执行.EXE文件,写出执行命令的常用格式。 答:DEBUG 。 实验二、寻址方式练习 掌握8086/8088的寻址方式是学习汇编语言的基础,因此,我们以数据传送指令为例编写了下面的程序,通过该程序对主要的几种寻址方式进行练习。 DATA1 SEGMENT M1 DB 0A0H,0A1H,0A2H,0A3H,0A4H,0A5H M2 DB 0A6H,0A7H,0A8H,0A9H,0AAH,0ABH,0ACH,0ADH,0AEH,0AFH DATA1 ENDS DATA2 SEGMENT N1 DB 0B0H,0B1H,0B2H,0B3H, 0B4H,0B5H N2 DB 0B6H,0B7H, 0B8H,0B9H,0BAH,0BBH, 0BCH,0BDH,0BEH,0BFH DATA2 ENDS STACK SEGMENT PARA STACK ‘STACK’ DB 0C0H,0C1H,0C2H,0C3H, 0C4H,0C5H DB 0C6H,0C7H, 0C8H,0C9H,0CAH,0CBH, 0CCH,0CDH,0CEH,0CFH

微机原理大作业

洛阳理工学院 微 机 原 理 与 接 口 技 术 《微机原理与接口技术》作为我们机械工程专业的必修的考察课程。本课程主要讲了计算机接口相关的基本原理、微处理器系统和微型计算机系统的总线、计算机接口技术的介绍以及计算机接口技术在工程

实际当中的应用等课程内容的介绍,概括了微机原理与计算机接口技术,微型计算机系统是以微型计算机为核心。 课程主要内容 第一章:主要了叙述微型计算机的发展构成和数的表示方法 (1)超、大、中、小型计算机阶段(1946年-1980年) 采用计算机来代替人的脑力劳动,提高了工作效率,能够解决较复杂的数学计算和数据处理 (2)微型计算机阶段(1981年-1990年) 微型计算机大量普及,几乎应用于所有领域,对世界科技和经济的发展起到了重要的推动作用。 (3)计算机网络阶段(1991年至今)。 计算机的数值表示方法:二进制,八进制,十进制,十六进制。要会各个进制之间的数制转换。计算机网络为人类实现资源共享提供了有力的帮助,从而促进了信息化社会的到来,实现了遍及全球的信息资源共享。 微机系统的基本组成 1.微型计算机系统由硬件和软件两个部分组成。

2.系统总线可分为3类:数据总线DB(Data Bus),地址总线AB(Address Bus),控制总线CB(Control Bus)。 3.微机的工作过程就是程序的执行过程,即不断地从存储器中取出指令,然后执行指令的过程。 第二章8086/8088微处理器 1.8086微处理器结构: CPU内部结构:总线接口部件BIU,执行部件EU; CPU寄存器结构:通用寄存器,段寄存器,标志寄存器,指令指针寄存器; CPU引脚及其功能:公用引脚,最小模式控制信号引脚,最大模式控制信号引脚。 2、8086/8088 CPU芯片的引脚及其功能 8086/8088 CPU具有40条引脚,双列直插式封装,采用分时复用地址数据总线,从而使8086/8088 CPU用40条引脚实现20位地址、16位数据、控制信号及状态信号的传输。 3.8086微机系统存储器组织:存储器组成和分段。8086微机系统的I/O结构 4.8086最小/最大模式系统配置:8086/8088 CPU芯片可以在两种模式下工作,即最大模式和最小模式。 最大模式:指系统中通常含有两个或多个微处理器(即多微处理器系

西安电子科技大学网络跟继续教育学院微机原理试题资料精

学习中心_________ 姓名_____________ 学号 西安电子科技大学网络与继续教育学院 《微机原理与应用》全真试题 (开卷90分钟) 题号一二三四五六总分 题分30 10 20 10 10 20 得分 一、填空(每空2分,共30分) 1.若(DX)=7BH,(CL)=03H,CF=1,则CPU执行 RCR DX,CL指令后,(DX)= 。 2.8086CPU关于数据的寻址方式中,是存储器寻址方式的有 。 3.若给某微机系统配置16K字节的SRAM电路,SRAM芯片选用Intel6264,则共需片6264芯片。 4.在8086系统中,若某存储器字单元是未对准的,则CPU访问该存储单元需个总线周期完成。若访问另一偶地址存储器字节单元时,使用数据总线。

5. MOV AX,[BP][DI] +13H 指令的源操作数的寻址方式为。 6.若(DS)=0100H ,(SS)=0150H ,(BX)=0003H ,(BP)=0003H ,存储器 (01003H)=5566H,(01503H)=7788H,则CPU执行:MOV AL,[BX]指令后,(AL)= ,CPU执行MOV AX,[BP]指令后,(AX)= 。 7. 将十进制数75用分离BCD码形式定义到BCDWORD字单元的伪指令定义 语句为。 8.若(DL)=OFFH,CF=0,则CPU 执行INC DL 指令后,CF= ,(DL)= 。 9.8086CPU的字符串处理指令的目的串地址默认在。 10.I/O 地址译码方式有部分地址译码和。 11.若分配给某存储器单元的逻辑地址为8B90H:7850H,则该单元的物理地址为 H。 12.十进制数-100的补码为 B。 二、判断下列指令语法书写是否正确,对于正确指令打√,并分别说明源 操作数的寻址方式,对于错误指令打×,说明其错误原因。(10分)(设VARB为字节变量,VARW为字变量) 1.MOV DS, SEG VARW 2.SUB DX, VARB 3.PUSH 12ABH

西安电子科技大学微机原理上机题37题

编写程序实现将缓冲区BUFFER中的100个字按递增排序,并按下列格式顺序显示:数据1 <原序号> 数据2 <原序号> 数据3 <原序号> ················ 程序如下(效果图): N=100 DATAS SEGMENT BUFFER LABEL WORD X=55519 REPT 100 X=(X+7517)mod 65535 DW X ENDM NUMBER LABEL BYTE Y=0 REPT 100 Y=Y+1 DB Y ENDM DECIMAL DB 5 DUP(?) M DW 1 DUP(?) DATAS ENDS STACKS SEGMENT DW 100H DUP(?)

TOP LABEL WORD STACKS ENDS CODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKS START: MOV AX,DATAS MOV DS,AX MOV ES,AX MOV AX,STACKS MOV SS,AX LEA SP,TOP XOR AX,AX ;开始程序 LEA SI,BUFFER LEA DI,NUMBER CALL SORT MOV CX,N ;显示程序开始 L1: MOV AX,[SI] MOV M,5 CALL DISPAXD CALL DISPEM ADD SI,2 ;显示数值 XOR AX,AX MOV AL,[DI] MOV M,3 CALL DISPAXD CALL DISPCR INC DI ;显示序号 LOOP L1 MOV AH,4CH MOV AL,0 INT 21H SORT PROC NEAR PUSH SI PUSH DI PUSH AX PUSH BX PUSH CX MOV CX,N;开始冒泡程序 DEC CX LP1: ;外循环 PUSH SI PUSH DI

西电微机原理第二次上机实验报告

西电微机原理第二次上机实验报告 学号:姓名: 一、实验目的 1.熟练掌握汇编语言程序设计的方法及上机步骤。 2.掌握算术运算中,十进制数调整指令的应用。 3.掌握子程序的设计方法。 4.掌握DOS功能的调用方法。 二、实验仪器 586微机 1台 三、实验内容 编写求十进制数12678532与21736543之和的程序,并将和以十进制数的形式送屏幕显示。 编程要求与提示: [1] 两个加数均以压缩(组合)十进制数形式存放在ADD1和ADD2为首址的存贮器单元。 [2] 和以压缩十进制数的形式存入SUM以下单元。 [3] 将和送到屏幕显示部分功能的实现采用子程序的形式。 [4] 实验步骤如下: a. 用全屏幕编辑软件建立源程序。 b.用masm.exe汇编程序对源程序进行汇编,形成目标程序。 c. 用link.exe连接程序对目标程序进行连接形成可执行文件。 d. 用DEBUG对连接通过的可执行程序进行调试。 四、实验内容对应的源程序及流程 源程序如下: STACK SEGMENT STACK DB 10H DUP(00) STACK ENDS DATA SEGMENT ADD1 DB 12H,67H,85H,32H ADD2 DB 21H,73H,65H,43H SUM DB 4H DUP(?) DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,ES:DATA,SS:STACK START:

MOV AX, DATA MOV DS, AX MOV AX, DATA MOV ES, AX MOV AX,STACK MOV SS,AX LEA SI, ADD1[3] LEA BX, ADD2[3] LEA DI,SUM[3] MOV CX,4 CLC L1: MOV AL,[SI] ADC AL,[BX] DAA MOV [DI],AL DEC SI DEC BX DEC DI LOOP L1 CALL DISPAL ; ------------EXITPROC: MOV AH,4CH ;结束程序 MOV AH,1 INT 21H ; ------------DISPAL PROC NEAR PUSH AX PUSH BX PUSH CX PUSH DX PUSH DI LEA DI,SUM MOV CX,4 DISPAL2: MOV AL,[DI] SHR AL,1 SHR AL,1 SHR AL,1 SHR AL,1 MOV AH,2 MOV DL,AL ADD DL,30H

西安电子科技大学考研复试-微机原理练习题

《微型计算机原理及接口技术》试题 一. 单项选择题 1. 8086CPU芯片的外部引线中,数据线的条数为○ ①6条②8条③16条④20条 2. 8088CPU上READY信号为下面哪种信号有效?○ ①上升边②下降边③高电平④低电平 3. 8088CPU中的CS寄存器是一个多少位的寄存器?○ ①8位②16位③24位④32位 4. 当8086CPU 读写内存的一个规则(对准)字(16位)时,BHE和A0的状 态必须是○ ①00 ②01 ③10 ④11 5. 当8086CPU读I/O接口时,信号M/IO和DT/R的状态必须是○ ①00 ②01 ③10 ④11 6. 在8088CPU中, 用于寄存器间接寻址输入输出指令的寄存器是○ ①AX ②BX ③CX ④DX 7. ISA总线是一种多少位的内(系统)总线?○ ①8位②16位③32位④64位 8. 属于只读存贮器的芯片是○ ①SRAM ②DRAM ③EPROM ④SDRAM 9. 需要定时刷新的存贮器是○ ①SRAM ②DRAM ③EPROM ④EEPROM 10. 内存从A4000H到CBFFFH,共有○ ①124K ②160K ③180K ④224K 11. 擦除EPROM是用○ ①+5V电压②+15V电压③+21V电压④紫外光照射 12. 采用查询方式来实现输入输出是因为它○ ①速度最快 ②CPU可以不介入 ③实现起来比较容易 ④在对多个事件查询工作时,能对突发事件做出实时响应 13. 实现DMA传送,需要○ ①CPU通过执行指令来完成②CPU利用中断方式来完成 ③CPU利用查询方式来完成④不需要CPU参与即可完成 14 下面哪种说法不正确○ ①内存地址也可做为接口地址使用②内存地址不可做为接口地址使用 ③接口地址不可做为内存地址使用④接口地址也可做为外存地址使用

西电微机原理大作业

汇编语言程序设计综合实验 姓名:刘发强 学号:14020199044 2016年12月25日

题目功能及要求 题目要求 编写程序实现下列5项功能,通过从键盘输入1~5进行菜单式选择: (1)按数字键“1”,完成将字符串中的小写字母变换成大写字母。用户输入由英文大小写字母或数字0~9组成的字符串(以回车结束),变换后按下列格式在屏幕上显示: <原字符串>例如:abcdgyt0092 <新字符串> ABCDGYT0092 按任一键重做;按Esc键返回主菜单。 (2)按数字键“2”,完成在字符串中找最大值。用户输入由英文大小写字母或数字 0~9组成的字符串(以回车结束),找出最大值后按下列格式在屏幕上显示: <原字符串> The maximum is <最大值>. 按任一键重做;按Esc键返回主菜单。 (3)按数字键“3”,完成输入数据组的排序。用户输入一组十进制数值(小于255), 然后变换成十六进制数,并按递增方式进行排序,按下列格式在屏幕上显示: <原数值串> <新数值串> 按任一键重做;按Esc键返回主菜单。 (4)按数字键“4”,完成时间的显示。首先提示用户对时,即改变系统的定时器 HH:MM:SS(以冒号间隔,回车结束),然后在屏幕的右上角实时显示出时间: HH:MM:SS。 按任一键重新对时;按Esc键返回主菜单。 (5)按数字键“5”,结束程序的运行,返回操作系统。 程序功能及分析: 程序主干: (1)主程序:通过调用屏幕初始化子程序、光标位置设定子程序、清屏子程序、菜单显示子程序、命令解析子程序完成显示器初始化,设置光标位置,打印程序菜单列表以及用户输入提示信息,并等待用户从键盘输入1~5进行菜单选择。用户输入错误会被要求重输。子程序跳转利用数据段转移地址查找表实现。从子服务退回时,重新开始上述操作。 (2)子服务一:将字符串中的小写字母转换成大写字母,并输出到屏幕上。先调用字符串输出子程序输出提示信息,后调用字符串输入子程序将用户从键盘输入的字符串读到BUFFER1存储区,后逐个判断字符是否为小写字母,如果是,则通过逻辑与进行转化,完成后,将结果放置到BUFFER2,后调用字符串输出子程序完成输出。然后输出是否重做提示信息,调用无回显的字符读入子程序,并判断退出到主程序或重做。 (3)子服务二:找出一字符串中ASCII码最大的字符并输出。先调用字符串输出子程序输出提示信息,后调用字符串输入子程序将用户从键盘输入的字符串读到BUFFER1存储区,将AL赋初值为第一个字符,后将AL作为暂时最大值与各字符逐个比较,

西电微机原理与系统设计上机报告

微机原理与系统设计上机报告 学号:1404019 姓名:** 指导老师:** 时间:2016年11月 西安电子科技大学

内容一 Debug程序的使用 一、实验目的 1. 学习使用DEBUG调试命令。 2. 学习用DEBUG调试简单程序。 3. 通过程序验证码制及其对标志位的影响。 4. 通过调试熟悉和掌握各寄存器的作用与特点。 二、实验内容 用DEBUG调试简单程序。 三、实验仪器 微机一台 四、实验步骤 1.由DOS进入DEBUG调试环境。 (1)DEBUG将调试程序装入内存 注意:当机器控制权由DOS成功地转移给调试程序后,将显示“-”号,它是DEBUG的状态提示符,表示可以接受调试子命令了。

2.用DEBUG调试简单程序 例1 -A CS:0106 MOV AX,1234 MOV BX,2345 MOV CX,0 ADD AX,BX MOV CX,AX INT 20 运行程序 (注:执行程序时IP应指向要执行的指令,需要修改该寄存器 -RIP 当前值 输入需要值该处为0106,当然也可以在T或G命令中指出程序起始地址) -R 显示各寄存器当前内容及首条指令 -T 3 跟踪执行三条赋值传送指令,观察寄存器及标志位 -T 2跟踪执行相加及送和数指令,观察寄存器及标志位 -G 执行软件中断指令INT 20,机器将显示“程序正常终止”的信息,并显示“-”,表明仍处在DEBUG的调试控制状态下,注意未用T命令,因为我们不想进入到20H中断处理程序中去,P命令也可实现相同操作 实验现象记录:观察与记录按照上述要求命令执行后,哪些寄存器和标志位发生了变化。

微机原理第二次实验报告

实验二定时器实验 一、实验目的与要求 利用定时器控制产生占空比可变的PWM波,通过实验验证进一步加强对定时器功能的认识,掌握定时器的使用方法。 1、用P1.0口输出PWM波,利用按键控制占空比的增加和降低,用示波器查看P1.0口的输出波形。 2、引导学生进行利用现有程序演示定时器动态显示数码管实验,了解数码管动态扫描方式。 二、实验注意事项 1、启动KEIL软件,选择菜单“工程\新建工程”以建立工程(扩展 名为.uv2,如T2a.uv2)。 2、选择菜单“文件\新文件”以建立一个新的文本编辑窗口,在窗 口中输入参考源程序1并保存(扩展名为.asm),如test2a.asm,然后将其加入到源程序组1中。 3、在工程菜单的选项“目标1属性”中设置相应的选项,包括“输 出\产生hex文件”选项以便汇编生成HEX代码供编程器使用,在“调试\使用KeilMonitor-51 Driver”的设置中选择相应的串口号。 4、使用“工程”中的“编译全部文件”完成相应的文件编译,如果 程序格式正确将生成相应HEX代码文件,如T2a.hex。如果提示有编译错误请自行修改源程序然后再重新编译。 5、用单根连线将P1.0(JP44)连接到8路指示灯部分(JP32)的LED0, 将P1.6、P1.7(JP44)分别连接到JP37的K01、K02。 6、完成仿真器与计算机之间的连线并通电。 7、在KEIL软件中启动“调试\开启仿真模式”,然后用“运行”命 令实现全速运行的仿真。 8、观察实验现象并分别依次按下K01、K02,观察并记录实验现象然 后在KEIL软件中启动“中断运行-调试(debug)\关闭仿真模式”退出仿真,选择“工程\关闭工程”可关闭当前工程。 9、参考步骤1-4完成参考源程序2的建立与输入,如新项目 T2b.uv2和新的源程序test2b.asm,完成编译与仿真设置。 10、用8PIN连线将P0口连接到数码管数据输入端,P2口连接到数码 管控制端。 11、输入程序并仿真运行,注意数码管的显示内容。 12、根据参考源程序1和参考源程序2进行思考、修改和拓展,自行 设计程序目标并编程验证。 13、本次实验主要连线如图

西电微机原理试题

考试时间:120分钟姓名:班级:学号:任课老师: 一、填空题(每空1分,共35分) 1.十进制数125对应的二进制数为 B;十进制数0.6875对应的二进制数为 B。 2.设机器字长为8位,-1010101B的原码为 B;补码为 B。 3.设a=0F7H, b=0D7H,且a、b为8位二进制补码表示的十六进制数。计算a+b,并判断其结果 是否溢出。正确的结论为。 4.一般来说,8位二进制数(一个字节)可以表示两位十进制数,这种表示方法称为 BCD 数表示方法。十进制数49以分离BCD码形式定义到FLBCD 字单元,正确的伪指令为。 5.计算机中的带符号数都是用表示的,字符都是用表示的。将AL中保存 的字母ASCII码变换成相应的大写字母的ASCII码,则正确的逻辑指令为。 6.8086 CPU芯片有40个管脚,微处理器通过这些引脚与外部的逻辑部件连接,完成信息的交 换。CPU的这些引脚信号称为。 7.在微型计算机系统中,对存储器的编址和对I/O端口的编址方法有和 两种编址方法。而大多数微处理器是采用两个独立的地址空间,即存储器地址空间和I/O地址空间。8086CPU对存储器的编址和对I/O端口的编址采用的是方法。 8086CPU采用引脚信号来区分对存储器和I/O端口的读写操作。 8.8086CPU内部的功能结构主要包含两个独立的逻辑单元:执行单元EU和总线接口单元BIU。 其中BIU主要完成。 9.在8086CPU的寄存器组织中,通用寄存器分别为。 10.8086微处理器状态字PSW是一个16位的寄存器,一共设定了9个标志位,其中用于反映 ALU前一次操作结果的状态标志分别为;若(AX)=5439H,则8086CPU 执行ADD AX,476AH指令后,OF= ;执行AND AX,476AH指令后,OF= 。 11.有一块120个字的存储区域,其起始地址为625AH:234DH,则这个存储区域的末地址单元的 物理地址为。 12.若DATBUF为字变量,则MOV AX,DATBUF[BP]指令SRC的寻址方式为;将DATBUF变 量对应单元的偏移地址传送到BX寄存器正确的指令为;若想将DATBUF低地址单元的内容传送到AL寄存器正确的指令为。 13.在缓冲区buf1中留出100个字节的存储空间,正确的变量定义语句为。 14.执行下列指令后,DX寄存器中的内容为。 TABLE DW 25,36,-2,-10,5678H,13 PYL DW 7

西电微机原理上机作业完整版

上机作业(一)

指令SRC寻址方式SRC的地 址 AX推算 值 AX实 际值 MOV AX, CX 寄存器寻址0005 0005 MOV AX, 500H 立即寻址0500 0500 MOV AX, TABLE 直接寻址1541:0004 A5A4 A5A4 MOV AX, ES:[BX] 寄存器间接寻址1542:0004 C5C4 C5C4 MOV AX, [BX+05H] 寄存器相对寻址1541:0009 AAA9 AAA9 MOV AX, SS:[BX]+03H 寄存器相对寻址153F:0007 B8B7 B8B7 MOV AX, TABLE [BX] 寄存器相对寻址1541:0008 A9A8 A9A8 MOV AX, 07H [BX] 寄存器相对寻址1541:000B ACAB ACAB MOV AX, [BP] 寄存器间接寻址153F:0003 B4B3 B4B3 MOV AX, TABLE [BP] 寄存器相对寻址1541:0007 A8A7 A8A7 MOV AX, 08H [BP] 寄存器相对寻址153F:000B BCBB BCBB MOV AX, [BP+06H] 寄存器相对寻址153F:0009 BAB9 BAB9 MOV AX, DS:[BP+03H] 寄存器相对寻址1541:0006 A7A6 A7A6 MOV AX, [BP]+05H 寄存器相对寻址153F:0008 B9B8 B9B8 MOV AX, ES: [SI+03H] 寄存器相对寻址1542:0005 C6C5 C6C5 MOV AX, [DI+06H] 寄存器相对寻址1541:0007 A8A7 A8A7 MOV AX, [DI]+05H 寄存器相对寻址1541:0006 A7A6 A7A6 MOV AX, TABLE [SI] 寄存器相对寻址1541:0006 A7A6 A7A6

西电电院微机原理上机实验报告

微机原理上机作业 班级: 021215班 学号: 02121443 姓名:惠政 日期: 2014年11月23日

第一次上机:上级作业(一) 寻址方式练习 一.实验目的 1. 熟练掌握8086/8088的各种寻址方式及应用。 2. 掌握DEBUG调试程序中的一些常用命令的使用方法,为以后的实验打下基础。二.实验仪器 586微机 1台 三.实验内容 1.关于数据的寻址方式练习 8086/8088 提供多种方式实现操作数寻址,大体可分为7种: a. 立即寻址 b. 寄存器寻址 c. 直接寻址 d. 寄存器间接寻址 e. 寄存器相对寻址 f. 基址变址寻址 g. 基址变址且相对寻址 掌握8086/8088的这些寻址方式,是学习汇编语言编程的关键。因此,我们编写了下面的程序段,以数据传送指令为例,列举了部份寻址方式,请同学们按下列要求认真完成。 [1] 在全屏幕编辑软件下,建立以下汇编语言源程序。 STACK SEGMENT STACK DB 0B0H, 0B1H, 0B2H, 0B3H, 0B4H, 0B5H, 0B6H, 0B7H DB 0B8H, 0B9H DB 0BAH, 0BBH, 0BCH, 0BDH, 0BEH, 0BFH DB 10H DUP(00) STACK ENDS DATA1 SEGMENT DB 0A0H, 0A1H, 0A2H, 0A3H TABLE DW 0A5A4H DB 0A6H, 0A7H, 0A8H, 0A9H, 0AAH, 0ABH DB 0ACH, 0ADH, 0AEH, 0AFH DATA1 ENDS DATA2 SEGMENT DB 0C0H, 0C1H, 0C2H, 0C3H, 0C4H, 0C5H, 0C6H, 0C7H DB 0C8H ,0C9H, 0CAH, 0CBH, 0CCH, 0CDH, 0CEH, 0CFH DATA2 ENDS CODE SEGMENT ASSUME CS:CODE, DS:DATA1, ES:DATA2, SS:STACK START: MOV AX, DATA1 MOV DS, AX MOV AX, DATA2 MOV ES, AX MOV BX, 0004H

西安电子科技大学微机原理大作业

西安电子科技大学微机原理大作业

第一次上机 一、实验目的 1. 熟练掌握8086/8088的各种寻址方式及应用。 2.掌握DEBUG调试程序中的一些常用命令的使用方法,为以后的实验打下基础 二、实验仪器 586微机 1台 三、实验内容 1.关于数据的寻址方式练习 8086/8088 提供多种方式实现操作数寻址,大体可分为7种: a. 立即寻址 b. 寄存器寻址 c. 直接寻址 d. 寄存器间接寻址 e. 寄存器相对寻址 f. 基址变址寻址

g. 基址变址且相对寻址 掌握8086/8088的这些寻址方式,是学习汇编语言编程的关键。 指令 SRC 寻址方 式 SRC 的地 址 AX 推算值 AX 实际值 MOV AX, CX 寄存器寻 址 0005 0005 MOV AX, 500H 立即寻址 0500 0500 MOV AX, TABLE 直接寻址 1541:0004 A5A 4 A5A 4 MOV AX, ES:[BX] 寄存器间接寻址 1542:0004 C5C 4 C5C 4 MOV AX, [BX+05H] 寄存器相对寻址 1541:0009 AAA 9 AAA 9 MOV AX, 寄存器相 153F B8B B8B

7 MOV AX, TABLE [BX] 寄存器相对寻址 1541:0008 A9A 8 A9A 8 MOV AX, 07H [BX] 寄存器相对寻址 1541:000B ACA B ACA B MOV AX, [BP] 寄存器间 接寻址 153F :0003 B4B 3 B4B 3 MOV AX, TABLE [BP] 寄存器相对寻址 1541:0007 A8A 7 A8A 7 MOV AX, 08H [BP] 寄存器相对寻址 153F :000B BCB B BCB B MOV AX, [BP+06H] 寄存器相对寻址 153F :0009 BAB 9 BAB 9 MOV AX, 寄存器相 1541 A7A A7A

西电通院专业教育大作业

《专业教育》(第三学期) 课程大作业 专业:通信工程 班级: 学号: 姓名:

通信工程专业培养目标及发展 通信工程专业培养学生掌握通信工程类专业坚实的基础理论、相关的专业基础和专业知识,能从事通信理论、通信系统、通信设备以及信息系统类的研究、设计、开发、制造、运营和管理的高素质的高级工程技术人才和现代化建设人才。本专业以数理、外语和通信基本理论为基础。 现有人才培养方案是围绕培养德、智、体全面发展,适应社会主义现代化建设需要,既有扎实的基础理论、较强的计算机和外语应用能力,熟练掌握通信与信息系统、信息处理和通信网络等方面的专业理论和工程技术,又有具备在信息与通信工程领域从事科学研究,工程设计,设备制造、运营和维护和管理工作,并具有一定创新精神和研发能力的高级工程技术人才。毕业后可从事通信系统、通信工程技术和通信新产品研究开发、调试和运营等工作,也可从事IT及相关专业的科学研究与技术开发工作。通信工程专业主要研究信号的产生、信息的传输、交换和处理,以及在计算机通信、光纤通信、无线通信、交换与通信网等方面的理论和工程应用问题,培养从事通信工程、电子信息技术及计算机网络系统的研究、制造、开发和应用的高级人才。 受工业影响,我国一些较早成立的工科大学就已开设了电报、电话和有线信号传输等相关专业。新中国成立后,中国工业亟待发展与更新,中国高等教育的工科教育得到了高度的重视。由于电报、电话、电台和收音机等通信电子产品高速发展,而人才资源又极度匠乏,促使了新中国最早的通信技术相关本科专业的诞生和发展。同时,我国开始建设系列部委学校。期间北京邮电学院、重庆邮电学院、成都电讯工程学院、西北电讯工程学院等一些重要的工科高等学校相继成立和建设,与通信技术相关的本科专业开始在全国招生,为我国自主培养了第一批通信技术人才。如今随着通信与各种新技术结合的层出不穷,涉及的领域越来越广泛,如电信、网络、家电、金融、医疗、航空、工业等等。我国的传统的通信领域信息通信基础设施包括光纤、卫星、程控交换、移动通信、数据通信、互联网等。信息通信已经成为国民经济增长的支柱和先导产业。从1995年到2003年,行业增长的形势不得不用迅猛二字来形容。计算机、互联网、多媒体的飞速发展和广泛应用极大地推动了通信工程专业发展。就在几年前,人们的手机功能还停留在短信和通话功能上,如今上网、游戏、微博、微信、手机视频众多通讯

相关文档
最新文档