当前位置:文档之家› 微机原理

微机原理

微机原理
微机原理

实验一汇编语言程序编制(一)

一、实验目的:

1、熟悉在PC机上建立、汇编、连接、调试和运行8086汇编语言程序的过程。

2、熟悉masm for windows调试环境。

二、实验内容:

1、masm for windows软件的操作步骤;

2、熟悉汇编语言源程序的编制过程;

3、根据错误提示信息进行程序修改,最终能调试运行成功。

三、实验设备

PC机一台、masm for windows 汇编语言集成环境

四、实验准备

1、编写显示笑脸的源程序

2、验证程序运行结果

五、实验步骤

1、输入源程序

首先打开Masm for Windows 集成实验环境,整个伪指令的框架已经做好,只需将需要的代码填写到相应的位置即可,左侧提供帮助和范例,如图1所示。

输入源程序后,直接点击运行按钮,弹出对话框提示要先保存,保存时扩展名应为.asm。

命名为example再次进行运行,如图3所示,弹出DOSBOX窗体,显示运行结果。

如果运行时有错误,则会出现错误描述,指出是什么、错误语句的位置。

2、按照以上步骤输入显示笑脸的源程序,进行汇编、连接程序,最终生成.EXE 文件,执行文件,检查结果。

六.源程序

1.CODES SEGMENT

2.ASSUME CS:CODES

3.START:

4.MOV AH,01H ;置功能号<输入字符并回显>

5.INT 21H ;执行INT21H

6.CMP AL,03H ;是否是字符

7.JZ EXIT ;是则转到EXIT

8.CMP AL,30H ;否则跟30H进行比较

9.JBE START ;不大于30H转到START

10.CMP AL,39H ;大于30H再跟39H比较

11.JA START ;大于39H转到START

12.SUB AL,30H ;减去3OH得到显示字符的个数

13.XOR AH,AH ;AH清零

14.MOV BP,AX ;把显示字符的个数送入BP

15.LOOPER:MOV AH,02H ;置功能号<显示字符>

16.MOV DL,01H ;设置入口参数<显示笑脸>

17.INT 21H ;执行INT21H

18.DEC BP ;使BP减1

19.JNZ LOOPER ;非零转移到LOOPER

20.JMP START ;否则转到START

21.EXIT:MOV AX,4C00H ;带返回码结束

22.INT 21H ;执行INT21H

23.CODES ENDS

24.END START

2.实验中出现的问题及解决方法:

1.转换成exe失败,发现程序写的不对,经过改正,获得成功。

2.标点符号忘了改成英文格式,经过修改,完成实验。

3.可运行但结果不对,经过修改,完场实验。

实验二汇编语言程序编制(二)

一、实验目的:

1、熟悉在PC机上建立、汇编、连接、调试和运行8086汇编语言程序的过程。

2、掌握汇编语言编程技巧。

二、实验内容:

1、masm for windows软件的操作步骤;

2、熟悉汇编语言源程序的编制过程;

3、根据错误提示信息进行程序修改,最终能调试运行成功。

三、实验设备

PC机一台、masm for windows 汇编语言集成环境

四、实验步骤

1.编辑和运行人机对话程序。

2.输入和运行大小写字母转换程序。

五、注意事项

1、当运行程序发生语法错误时,Masm for Windows集成实验环境会自动定位源程序中错误所在行的位置并高亮显示该行,修改好第一条发生错误行后,双击任一条错误信息,该软件定位源程序中与之相对应错误所在行的位置并高亮显示该行,以便改正错误。

实验二:人机对话

DATA SEGMENT

MESG1 DB 0DH,0AH,'What is your name?$'

MESG2 DB'?(Y/N)$'

BUF DB 30

DB?

DB 30 DUP(?)

DATA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA;DS表明有数据段

BEG: MOV AX,DATA

MOV DS,AX

AGAIN: MOV AH,9;9号功能调用

MOV DX,OFFSET MESG1;取偏移地址,显示MESG1

INT 21H;声明DOS调用

MOV AH,0AH

MOV DX,OFFSET BUF

INT 21H ;光标闪烁,声明DOS调用

MOV BL,BUF+1 ;实际字符个数放入BL中

MOV BH,0;BH清零

MOV SI,OFFSET BUF+2;偏移地址送入到SI中

MOV BYTE PTR[BX+SI],'$';BS+SI是实际字符末尾,BYTE限定为字符操作

MOV AH,2

MOV DL,0A

INT 21H;换行操作

MOV AH,9;9号功能调用

MOV DX,OFFSET BUF+2

INT 21H;显示BUF+2后的内容

MOV AH,9;9号功能调用

MOV DX,OFFSET MESG2;取偏移地址,显示MESG2的内容

INT 21H

MOV AH,1;1号功能单字符调用

INT 21H

CMP AL,'Y';

JNE AGAIN

MOV AH,4CH

INT 21H

CODE ENDS

END BEG

实验三:大小写字母转换程序

DATAS SEGMENT ;数据段

buffer db 20 dup(?) ;给buffer分配20个字节的存储空间

message1 db 'please input some characters:$'

message2 db 13,10,'$' ;回车,换行

DATAS ENDS

STACKS SEGMENT ;此处输入堆栈段代码

STACKS ENDS

CODES SEGMENT ;主程序

ASSUME CS:CODES,DS:DATAS,SS:STACKS

;设置逻辑段的段址

START:

MOV AX,DATAS

MOV DS,AX

lea bx,buffer ;此处输入代码段代码

mov si,0 ;置零

mov di,0 ;置零

mov ah,09h ;dos功能调用显示字符串

lea dx,message1 ;提示语

int 21h

transf:

mov ah,01h ;dos功能调用键盘输入字母

int 21h

cmp al,3 ;判断是ctrl-c吗?3是其ascii码

jz exit

cmp al,0dh ;判断是回车吗?13其ascii码

jz print

cmp al,61h ;判断的大写还是小写?

jnb store ;小写转换储存

mov [bx+si],al ;大写直接储存

inc si

jmp transf

print:

mov cx,si ;设置loop次数

lea dx,message2 ;回车,换行

mov ah,09

int 21h

displ:

mov dl,[bx+di]

mov ah,02h

int 21h

inc di

loop displ

jmp exit

store:sub al,20h

mov [bx+si],al

inc si

jmp transf

exit:

MOV AH,4CH

INT 21H

CODES ENDS

END START

六.实验中出现的问题及解决方法:

1.$两边忘加’’,加上之后调试成功。

2. SEGMENT多输入一个S,导致很多错误,只要在SEGMENTS改为SEGMENT 即可调试通过。

七.实验总结

1、掌握了编写汇编源程序的基本格式。

2、熟悉了汇编语言上机环境,masm for windows软件的操作步骤。

3这次微机原理实验要用汇编语言来实现大小写字母的转换,所以自己一开始感觉这会非常的简单。直到真正的理解相关原理,要编写程序实现的时候,才发现,自己对汇编程序的了解确实还不够,尤其是编程方面的能力有待提高。

微机原理(第三版)课后练习答案

微机原理(第三版)课后练习答案

1 思考与练习题 一、选择题 1.计算机硬件中最核心的部件是( )。C A.运算器 B.主存储器 C.CPU D.输 入/输出设备 2.微机的性能主要取决于( )。 A (B——计算机数据处理能力的一个重要指标) A.CPU B.主存储器 C.硬盘 D.显示 器 3.计算机中带符号数的表示通常采用( )。 C A.原码 B.反码 C.补码 D.BCD码 4.采用补码表示的8位二进制数真值范围是( )。C A.-127~+127 B.-1 27~+128 C.-128~+127 D.-128~+128 5.大写字母“B”的ASCII码是( )。B A.41H B.42H C.61H D.62H 6.某数在计算机中用压缩BCD码表示为10010011,其真值为( )。C A.10010011B B.93H C.93 D.147 二、填空题

1.微处理器是指_CPU_;微型计算机以_ CPU _为核心,配置_内存和I/O接口_构成;其特点是_(1)功能强 (2)可靠性高 (3)价格低 (4)适应性强 (5)体积小 (6)维护方便_。P8 P5 2.主存容量是指_RAM和ROM总和_;它是衡量微型计算机_计算机数据处理_能力的一个重要指标;构成主存的器件通常采用_DRAM和PROM半导体器件_。P5 P9 3.系统总线是_CPU与其他部件之间传送数据、地址和控制信息_的公共通道;根据传送内容的不同可分成_数据、地址、控制_3种总线。P9 4.计算机中的数据可分为_数值型和非数值型_两类,前者的作用是_表示数值大小,进行算术运算等处理操作_;后者的作用是_表示字符编码,在计算机中描述某种特定的信息_。P12 5.机器数是指_数及其符号在机器中加以表示的数值化_;机器数的表示应考虑_机器数的范围、机器数的符号、机器数中小数点位置_3个因素。P15 P16 6.ASCII码可以表示_128_种字符,其中起控制作用的称为_功能码_;供书写程序和描述命令使用的称为_信息码_。P18 P19

微机原理期末考试试卷(有答案)

丽水学院《微机原理》考试试卷 班级:___________ 姓名:___________学号:____________ 题号一二三四五六总分得分 得分 一、判断题(每题1分,共10分) 1、十六位微型机的含义是:这种机器能同时处理十六位二进制数。(√) 2、微机的字长愈长,计算精度愈高,指令处理功能愈强。(√) 3、MOV指令要影响标志位。(×) 4、JMP SHORT NEXT称为近转移。(×) 5、8086与8088在软件上不一定完全兼容。(×) 6、端口是位于主机与外设之间的总称。() 7、DMA是一种不需要CPU介入的高速数据传送。() 8、8253中的计数可以通过初始化设置成加计数或减计数。() 9、内部中断的优先权总是高于外部中断。() 10、两片8259A级连后可管理16级中断。() 得分 二、选择题(每题1分,共20分) 1、属于数据寄存器组的寄存器是_____C___。 A.AX,BX,CX,DS B.SP,DX,BP,IP C. AX,BX,CX,DX D.AL,DI,SI,AH 2、在8086和8088汇编语言中,一个字能表示的有符号数的范围是_____B___。 A.-32768≤n≤32768 B.-32768≤n≤32767 C.-65535≤n≤65535 D.-65536≤N≤65535 3、某数存于内存数据段中,已知该数据段的段地址为2000H,而数据所在单元的偏移地址为0120H,该数的在内存的物理地址为__B______。 A.02120H B.20120H C.21200H D.03200H 4、在8086/8088微机系统中,将AL内容送到I/O接口中,使用的指令是 ___D_____。 A.IN AL,端口地址 B.MOV AL,端口地址 C.OUT AL,端口地址 D.OUT 端口地址,AL 5、与十进制数58.75等值的十六进制数是__B______。 A.A3.CH B.3A.CH C.3A.23H D.C.3AH 6、将十六进制数FF.1转换成十进制数是__C______。 A.255.625 B.2501625 C.255.0625 D.250.0625 7、十进制负数-38的八位二进制补码是____D____。

微机原理程序 (2)

实验二:循环程序设计 2. DA TA SEGMENT x db -78,127,-128,-125,88 y db 32,-43,76,95,1 S db 5 dup(?) data ends Code segment Assume cs:code,ds:data Start:mov ax,data Mov ds,ax Mov cx,5 Mov bx,0 L1:mov al,x[bx] Add al,y[bx] Inc bx Loop L1 MOV AH,4CH INT 21H CODE ENDS END START 3. DA TA SEGMENT Y DB 68H,24H,90H,57H,13H HX DB 67H,34H,12H,90H,57H S DB 5 DUP(?) DA TA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DA TA START:MOV AX,DATA MOV DS,AX MOV CX,5 MOV SI,OFFSET X MOV DI,OFFSET Y LP:MOV AL,[SI] MOV AH,[DI] ADC AL,AH DAA MOV S[SI],AL INC SI INC DI LOOP LP MOV AH,4CH INT 21H

CODE ENDS END START 4、 DA TA SEGMENT LIST DB 0,1,2,3,4,5,6,7,8,9 COUNT EQU $-LIST DA TA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DA TA START:MOV AX,DATA MOV DS,AX MOV CX,COUNT-1 LOOP1:MOV DX,CX MOV BX,0 LOOP2:MOV AX,LIST[BX] CMP AX,LIST[BX+1] MOV LIST[BX],AX LOOP3:INC BX LOOP LOOP2 MOV CX,DX LOOP LOOP1 MOV AX,4CH INT 21H CODE ENDS END START 实验三:子程序调用程序设计 DA TA SEGMENT NUM DB 85,77,126,-1,-43,37,-128,11,-19,13 DA TA ENDS ADDITION SEGMENT NUM1 DB 10 DUP(?) ADDITION ENDS CODE SEGMENT ASSUME CS:CODE,DS:DA TA,ES:ADDITION START:AX,DATA MOV DS,AX MOV AX,ADDITION MOV ES,AX CALL ORDER CALL COPY MOV AH,4CH INT 21H ORDER PROC MOV CX,9

西安邮电大学微机原理考试试卷

一. 简答题(每小题5分,共30分) 1.假设DS=2000H,CS=2300H,BX=1256H,TABLE的偏移地址是20A1H,物理地址为232F7H处存放3280H,物理地址为262F7H处存放33A0H,试问执行下列段内寻址的转移指令后,转移的有效地址是什么? 转移的物理地址是什么? (1) JMP BX (2) JMP TABLE[BX] 2.有以下数据段定义,请画出变量的分配图。 DATA SEGMENT Mylb DB “Computer” my2w DW 3 DUP(0) my3w DW my2w DATA ENDS 3.39H=______________B=_____D,作为ASCII码表示哪个字符?作为BCD 码表示哪个数? 4.变量是用符号表示的地址,称为符号地址。请问:变量的三个基本属性是什么? 5.设有关寄存器及存储单元的内容如下: (DS)=1000H,(BX)=0100H,(SI)=0002H,(10100H)=12H,(10101H)=34H,(10102H)=56H,(10103H)=78H,(11200H)=2AH,(11201H)=4CH,(11202H)=0B7H,(11203H)=65H 试说明下列各条指令执行完后,(AX)=? 并写出源操作数为存储器寻址的物理地址。 (1) MOV AX,1200H (2) MOV AX,BX (3) MOV AX,[1200H] (4) MOV AX,[BX][SI] (5) MOV AX,[1100H+BX+SI] 6.堆栈指针寄存器SP的初值为1000H,(AX)=2000H,(BX)=3000H,试问: (1) 执行指令PUSH AX后,(SP)=? (2) 再执行指令PUSH BX和POP AX后,(SP)=? (AX)=? (BX)=? 二.单向选择题(每小题1分,共10分) 1. Intel 8086是( B )位处理器。 A. 32 B. 16 C. 8 D. 4 2.在计算机内部,一切信息的存取、处理和传送都是以(C )形式进行的。 A.ASCII码B.BCD码C.二进制 D.十六进制3.在下面几个不同进制的数中,最小的数是( A )。(Q为八进制数标识符) A.01100010B B.750Q C.500 D.FEH 4.十进制数-38的8位二进制补码是( B )。 A.01011011 B.C.D.01011010 5.有一个8位二进制数的补码是,其相应的十进制真值是( B )。 A.-3 B.-2 C.510 D.254 6.8086微处理器被设计为两个独立的部件,它们是( D )。

微机原理习题及答案

一、选择 1、在微型计算机中,微处理器的主要功能是进行( )。 D A、算术运算 B、逻辑运算 C、算术、逻辑运算 D、算术、逻辑运算及全机的控制 2、Pentium I属于()位CPU C A、16 B、8 C、32 D、64 3、Intel 8086属于()位CPU A A、16 B、8 C、32 D、64 4、CPU与I/O设备间传送的信号通常有( ) D A、控制信息 B、状态信息 C、数据信息 D、以上三种都有 5、存储器用来存放计算机系统工作时所需要的信息,即( )。 D A、程序 B、数据 C、技术资料 D、程序和数据 6、运算器的核心部件是( )。 D A、加法器 B、累加寄存器 C、多路开关 D、算逻运算单元 二、填空 1、内存可分为2大类:随机存储器RAM 和 2、数据总线是向的,地址总线是向的。 3、计算机的五大部件是:、、、、输出设备 4、总线可分为三类:、、 5、存储程序工作原理最先由提出 6、在计算机内部,一切信息的存取、处理和传送都是以形式进行的。 1、只读存储器ROM 2、双、单 3、运算器、控制器、存储器、输入设备 4、地址总线、数据总线、控制总线 5、冯·诺依曼 6、二进制 三、简答 1、冯·诺依曼型计算机的特点是什么? (1).以二进制表示指令和数据 (2).程序和数据存放在存储器中,从存储器中取指令并执行 (3).由运算器、控制器、存储器、输入设备、输出设备构成计算机硬件系统。 一、选择 1、在机器数______中,零的表示形式是唯一的()。BD A、原码 B、补码 C、反码 D、移码 2、计算机内部表示带符号整数通常采用()。C A、原码 B、反码 C、补码 D、移码

南京师范大学微机原理期末模拟题

微机原理期末模拟 一.选择题 1.第一台计算机在哪一年问世?() A.1945 B.1946 C.1947 D.1948 2.8088/8086每个逻辑段最大为()KB. A.16 B.32 C.64 D.128 3.8088经过加电复位后,执行的第一条指令的地址是() A.03FFFH B.0FFFFH C. 0FFFF0H D. 0000H 4.哪个不是FLAGS( ) A.CF B. OF C.AF D.WF 5.下列指令中错误的是()。 A.MOV AH,AL B.MOV [BX],[SI] C.MOV AX,[BP][SI] D.MOV [BX],AX 6.01001100B和10010110B进行逻辑异或,其结果为()。A.11011010B B.11111011B C.00100101B D.11100010B 7.若执行加法操作前,AL=87H,BL=92H,两个数据执行加法操作后,CF 应为()。 A. 0 B. 1 C. 2 D. 10 8.若AX=9CH, BX=7BH,执行ADD AX,BX 运算,会产生____。 A. 无溢出,无进位 B. 无溢出,有进位 C. 有溢出,有进位 D. 有溢出,无进位 9.设22000H,22001H单元分别存放的数据为12H,34H,若要读取

22000H字单元中的数据,此时读出的数据是____。 A. 12H B. 34H C. 1234H D. 3412H 10. 二.填空题 1.主机由____、____、____、______四部分组成。 2.有符号八位二进制数补码表示的范围______。 3.二进制数01000111转换为BCD码为______。 4.MN/MX =____时,8088处在最小模式,构成_____系统。 5. 取指令时,使用的段寄存器是______。 6.系统的总线一般分为______、_______、________。 7.已知1F00;38A0,物理地址为____________。 8.8088/8086的工作特点_________、__________、_____________。8088/8086CPU中两个独立结构单元是_______和_____,功能分别为________、____________。 9.DW伪指令后面的每个操作数都占有____个字节。 10.8088/8086CPU指令系统按照功能可分为六大类:_____________、__________、___________、___________、___________、___________。三.分析下列程序段,写出其结果。 1、MOV AL,01H ROR AL,1 OR AL,AL NEG AL

微机原理程序

一,在数据段从TABLE开始定义10无符号的数据,每个数据为一个字节,计算这10个数的和,结果放到SUM字单元之中 DA TA SEGMENT TABLE DB 12H, 23H, 34H, 45H, 56H DB 67H, 78H, 89H, 9AH, 0FDH SUM DW DA TA ENDS STACK SEGMENT D8 5 DUP(?) STACK ENDS CODE SEGMENT ASSUME CS: CODE, DS: DATA, SS: STACK START: MOV AX, DATA MOV DS, AX MOV ES, AX MOV AX,STACK MOV SS, AX LEA SI, TABLE MOV CX, 10 XOR AX, AX NEXT: ADD AL , 0 INC SI LOOP NEXT MOV SUM, AX MOV AH, 4CH INT 21H CODE ENDS ENDS START

二,在数据段自TABLE开始的连续10个单元中有放在0-9的平方值,查表求任意数X (0<=X<=9)的平方值,并将结果放到RESULT中 三,在数据段定义2个数据,每个数据占有若干字节,按照低地址存储低数据位的原则存储,这两个数据长度一样,计算这2个数据的和,并将结果放到RESULT中。 四、用8255PA作开关量输入口,PB作输出口。 CODE SEGMENT ASSUME CS:CODE ,DS:CODE ,ES:CODE ORG 32E0H PA EQU 0FFD8H PB EQU 0FFD9H PC EQU 0FFDAH PCTL EQU 0FFDBH HI:MOV DX,PCTL MOV AL,90H OUT DX,AL PI:MOV DX,PA IN AL,DX INC DX OUT DX,AL JMP PI CODE ENDS END HI

微机原理课后答案

1.2 课后练习题 一、填空题 1.将二进制数1011011.1转换为十六进制数为__5B.8H_____。 2.将十进制数199转换为二进制数为____ 11000111____B。 3.BCD码表示的数,加减时逢__10____进一,ASCII码用来表示数值时,是一种非压缩的BCD 码。 4.十进制数36.875转换成二进制是___100100.111____________。 5.以_微型计算机____为主体,配上系统软件和外设之后,就构成了__微型计算机系统____。6.十进制数98.45转换成二进制为__1100010.0111_B、八进制__142.3463________Q、十六进制__62.7333________H。(精确到小数点后4位) 二、选择题 1.堆栈的工作方式是__B_________。 A)先进先出B)后进先出C)随机读写D)只能读出不能写入 2.八位定点补码整数的范围是____D_________。 A)-128-+128 B)-127-+127 C)-127-+128 D)-128-+127 3.字长为16位的数可表示有符号数的范围是___B___。 A)-32767-+32768 B)-32768-+32767 C)0-65535 D)-32768-+32768 三、简答题 1.微型计算机系统的基本组成? 微型计算机,系统软件,应用软件,输入输出设备 2.简述冯.诺依曼型计算机基本思想? ●将计算过程描述为由许多条指令按一定顺序组成的程序,并放入存储器保存 ●指令按其在存储器中存放的顺序执行; ●由控制器控制整个程序和数据的存取以及程序的执行; ●以运算器为核心,所有的执行都经过运算器。 3.什么是微型计算机? 微型计算机由CPU、存储器、输入/输出接口电路和系统总线构成。 4.什么是溢出? 运算结果超出了计算机所能表示的范围。 2.2 一、填空题 1. 8086/8088的基本总线周期由___4____个时钟周期组成,若CPU主频为10MHz,则一个时钟周期的时间为___0.1μs_____。 2. 在8086CPU的时序中,为满足慢速外围芯片的需要,CPU采样___READY_________信号,若未准备好,插入___TW__________时钟周期。 3. 8086系统总线形成时,须要用_____ALE__________信号锁定地址信号。 4. 对于8086微处理器,可屏蔽中断请求输入信号加在_____INTR__________引脚。

同济大学微机原理期末试题范围上课讲义

第一章概述 1、微型计算机的性能指标:速度,存储器容量 第二章计算机中的数制和编码 1、在计算机内部所有信息只能用“0”和“1”这两个状态表示,因此计算机内 部的“数”也都是用多个0和1组成的位串来表示的。按不同的格式构成的位组合状态就形成了不同的数制。 2、字长:把8位二进制数称为字节,把16位二进制数称为字,把32位二进制 数称为双字。 3、机器数:数值连同符号数码“0”或“1”一起作为一个数就是机器数,而它 的数值连同符号“+”或“-”称为机器数的真值。 4、原码:设机器的字长为n,则原码的定义: [X]= 反码:[X]= 反码和原码的区别:原码符号位不变,其他的位加1 补码:[X]= 正数的补码和原码相同,负数的补码为其反码在最低位加一 -128的补码按定义做:[-128]补=10000000B 对于十进制负数:若字长为n=8,其补码为256+X,字长为n=16,补码为65536+X 对于十六进制负数:若字长n=8,其补码为100H+X,若字长为n=16,补码为10000H+X 5、补码的运算 双高位法:OV=Cs+Cp,用来判是否溢出,Cs为加减运算中最高位(符号位)的进位值,Cp为加减运算中最高数值位的进位值。如果OV=1,则溢出。 直接观察法:当正加正为负,或反之,则溢出。 6、ASCII码 0~9为30~39,A到Z为41~5A,a~z为61~7A,Blank(space)为20,小数点为2E,换行LF为0A,回车CR为0D 7位ASCII码的最高位为逻辑“0”,常用奇偶校验位,用来检测存储和传送过程中是否发生错误。偶校验中,每个代码的二进制的形式中应有偶数个1. 7、汉字输入编码分为:数字编码,拼音码,字形编码。汉字编码分为:汉字的 输入编码,汉字内码,汉字自模码 第三章微型计算机的系统结构 1、硬件的组成及其功能:硬件由三个基本模块——微处理器模块,存贮器模块, I/O模块及连接这三个模块的总线构成。 微处理器CPU是微型计算机运算和控制的中心,包括运算器,控制器和存储器。他可以进行运算,逻辑判断和分析,并协调计算各个部分工作。 存储器主要是指微机的内存或主存储器,主要用来存放当前正在使用或经常

微机原理程序题

1. 将下面C语言程序的代码片段转换为功能等价的汇编语言代码片段,其中sign与sinteger 均为双字变量。 if ( sinteger = = 0) sign = = 0; else If ( siteger > 0) sign = 1; else sign = -1; mov eax,sinteger mov edx,sign cmp eax,0 jnz L1 mov ebx,0 L1:cmp ebx,0 jl L2 mov ebx,1 L2:mov ebx,-1 2. 将下面C语言程序的代码片段转换为功能等价的汇编语言代码片段,其中ch1与caps均为字节变量。 if (ch1> =’a’ && ch1< =’z’) caps= =0; if (ch1> =’A’ && ch1< =’Z’) caps= =1; mov ax,ch1 mov bx,caps cmp ax,a jb next cmp ax,z ja next mov bx,0 next:cmp ax,A jl done cmp ax,Z ja done done: 3. 将下面C语言程序的代码片段转换为功能等价的汇编语言代码片段,其中sum与i变量均为双字变量。 sum=0; for ( i=1;i< =100;i++) if ( i%2= =0) sum=sum+i; mov ecx,i mov ecx,1 .while(ecx<=100)

mov eax,ecx xor edx,edx mov ebx,2 div ebx cmp edx,0 jnz next add sum,ecx next:inc ecx .endw 1. 能被4整除但不能被100整除,或者年被400整除的年份是闰年。编程写一个完整的程序,求出2012年~2099年中的所有闰年年份,并把它们存放在数组Lyear中。 算法描述 ; esi=0;ecx=2012; ; while (ecx<2100) ; { if (year mod 4=0 and year mod 100 <>0) or (year mod 400=0) then ; {Lyear[esi]=ecx;esi++;} ; ecx++; ; } ; Lcounter=esi; include io32.inc .data Lyear dword 100 dup(?) Lcounter dword 0 .code mainproc xor esi,esi ;esi闰年个数计数器,兼做Lyear下标。 mov ecx,2012 ;ecx年份计数器。 .while (ecx<2100) mov eax,ecx xor edx,edx mov ebx,400 div ebx cmp edx,0 jz leap ;if year mod 400=0 then goto leap mov eax,ecx xor edx,edx mov ebx,4 div ebx cmp edx,0 jnz next ;if year mod 4<>0 then goto next mov eax,ecx xor edx,edx mov ebx,100 div ebx

工业大学微机原理考试题

天津工业大学电气工程与自动化学院(系) 2010 ~2011学年第 1 学期试卷 班级学号姓名 注意事项:1、本试卷共10页,满分为 100分,考试时间为 110分钟。 2、答题时请使用蓝、黑钢笔或圆珠笔,不得使用红颜色墨水笔。除特 殊要求外不得使用铅笔。

4.设8255A的方式选择控制字为9BH,其含义是() A.A、B、C口全为输出 B.A、B、C口全为输入 C.A、B口为方式0且输出 D.以上都不对 5.在DMA方式下,数据从内存传送到外设的路径是() A.内存→CPU→总线→外设 B.内存→DMAC→外设 C.内存→数据总线→外设 D.外设→内存 6.若8086 CPU主频为1MHz,则其基本总线周期为() A.4000ns B.5000ns C.1250ns D.2500ns 7.8253工作在哪几种方式时,计数器可以自动重复工作。() A.方式0,1 B.方式1,2 C.方式2,3 D.方式0,1,2,3 8.CPU响应INTR和NMI中断时,相同的必要条件是() A.当前总线空闲 B.允许中断 C.当前访问内存结束 D.当前指令执行结束 9. 80X86系统中, IRET指令执行的出栈恢复操作不包括断点处的() . A. CS B. SS C. FLAGS D. IP 10.用2K×4位的RAM芯片组成16K字节的存储器,共需RAM芯片为() A.16片 B.8片 C.4片 D.32片 11. 8088/8086CPU内部共有()个16位的段寄存器。 A. 4 B. 2 C. 14 D.16 12. 简单的输出接口电路对数据应该具备()功能 A. 锁存 B. 缓冲 C. 三态 D. 触发

微机原理习题解答

第一章微型计算机的基础知识 1-1 将下列十进制数转换为二进制数、十六进制数。 (1)110 (2)1 039 (3)0.75 (4)0.156 25 1-2 将下列十进制数转换为BCD 码。 (1)129 (2)5 678 (3)0.984 (4)93.745 1-3 将下列二进制数转换为十进制数、十六进制数。 (1)10101010 (2)10000000 (3)11000011.01 (4)01111110 1-4 将下列十六进制数转换为二进制数、十进制数。 (1)8E6H (2)0A42H (3)7E.C5H (4) 0F19.1DH 1-5 将下列二进制数转换为BCD 码。 (1)1011011.101 (2)1010110.001 1-6 将下列BCD 码转换为二进制数。 (1)(0010 0111 0011) BCD (2)(1001 0111.0010 0101) BCD 1-7 完成下列二进制数的运算。 (1)1001.11+11.11 (2)1101.01-0110.11 (3)1000.011-1001.101 (4)1111+1101 1-8 完成下列十六进制数的运算。 (1)6AH+0A6H (2)0AB1FH+0EFCH (3)12ADH-1DEH (4)117H-0ABH 1-9 已知X=01H,Y=0FFH ,在下面的情况下比较两数的大小。 (1)无符号数 (2)符号数 (均为补码) 1-10 计算下列各表达式。 (1)101+‘A’+01101001B+0D5H+57Q (2)127.8125+10111101.101+375.63Q+1FC.8AH 1-11 写出下列字符串的ASCII 码。 (1)HELLO (2)A8=

微机原理练习六--读程序并回答问题

微机原理练习六读程序并回答问题 1. 已知,(DS)=2000H,(BX)=100H,(SI)=0002H,从物理地址20100H单元开始,依次存放数据12H、34H、56H、78H; 而从物理地址21200H单元开始,依次存放数据2AH、4CH、8BH、98H。试说明下列各条指令单独执行后AX寄存器的内容。 ① MOV AX,3600H (AX)= ② MOV AX,[1200H] (AX)= ③ MOV AX,BX (AX)= ④ MOV AX,[BX] (AX)= 2. 以下语句汇编后,变量CON1、CON2、CON3和CON4的内容分别是多少? N1=10 N2=5 N3=3 CON1 DB NOT N1 CON2 DB (N1 AND N2 OR N3)GE 0FH CON3 DW (N2 AND N1 XOR N3)LE 0FH CON4 DB (N1 AND N3 OR N2)LT 0FH 3. 读下列程序,并在空白处填入合适指令,使该程序段能完成将100H个字节数据从2000H处搬到1000H处的操作。 MOV SI,2000H MOV CX,100H CLD 4 指出下面指令序列的执行结果。 MOV DX,2000H MOV BX,1000H XCHG BX,DX 则:BX= DX= 5 设初值AX=6264H,CX=0001H,在执行下列程序段后,AX=?CX=? AND AX,AX JZ DONE SHL CX,1 ROR AX,CL DONE:OR AX,1234H 则:AX= CX=

6有数据定义如下,与之等同功能的指令是什么? DAT DW 100 DUP(?) : MOV CX,LENGTH DAT ADD AX,TYPE DAT 7. 指出下面指令序列的执行结果。 MOV AX,1234H PUSH AX POP BX 则:BX= AX= 8. 对于给定的数据定义,变量R1和R2的值分别是多少? ①A1 DB 1,2,3,‘ABC’ A2 DB 0 R1 EQU A2-A1 则R1= ②K1 DW ? K2 DB 6 DUP(?) R2 EQU $-K1 则R2= 9. 选用最少的指令,实现下述要求的功能。 ①AH的高4位清0,其余位不变。 ②AL的高4位取反,其余位不变。 ③AL的高4位移到低4位,高4位清0。 ④AL的低4位移到高4位,低4位清0。 10. 下面一段程序完成对某一缓冲区置全“1”操作。设缓冲区长度为20个字节,缓冲区首址DI=0200H,并设(ES) =3000H,试填空。 CLD MOV AX,3000H MOV DI,0200H MOV AL,0FFH REP STOSB 11. 下列伪指令在存储区中分别为各变量分配多少字节? VR1 DW 10 VR2 DW 6DUP(?),66,88 VR3 DD 10DUP(?) VR4 DB ‘HOW ARE YOU’ 12. 写出下列程序段执行后的结果,并说出完成的是什么功能? MOV CL,4 MOV AL,87H MOV DL,AL AND AL,0FH OR AL,30H SHR DL,CL OR DL,30H 则(AL)= (DL)= 实现的功能为13. 分析程序段,并填入适当的内容。 MOV AL,0FH

微机原理_在线作业_C 答案

微机原理_在线作业_C 用户名:W310201132227最终成绩:100.0 一单项选择题 1. 对微处理器而言,它的每条指令都有一定的时序,其时序关系是()。 一个时钟周期包括几个机器周期,一个机器周期包括几个指令周期。 一个机器周期包括几个指令周期,一个指令周期包括几个时钟周期。 一个指令周期包括几个机器周期,一个机器周期包括几个时钟周期。 一个指令周期包括几个时钟周期,一个时钟周期包括几个机器周期。 本题分值: 5.0 用户得分: 5.0 用户解答:一个指令周期包括几个机器周期,一个机器周期包括几个时钟周期。知识点: 1 微机系统导论 2. 下列数中为最大值的是()。 5AH 01100011B 28 10011000BCD 本题分值: 5.0 用户得分: 5.0 用户解答: 01100011B 知识点: 2 微机运算基础 3. JMP FAR PTR BLOCK(BLOCK是符号地址)是()。

段内间接转移 段间间接转移 段内直接转移 段间直接转移 本题分值: 5.0 用户得分: 5.0 用户解答:段间直接转移 知识点: 4 汇编语言程序设计 4. 下列指令中,正确的是()。 MOV [DI],[SI] MOV DS,SS MOV AL,[AX+BX*2] OUT BX,AX 本题分值: 5.0 用户得分: 5.0 用户解答: MOV AL,[AX+BX*2] 知识点: 3 微处理器及其系统 5. 和外存相比,内存的特点是()。 容量小、速度快、成本高 容量小、速度快、成本低 容量大、速度快、成本高 D容量大、速度快、成本低 本题分值: 5.0 用户得分: 5.0

微机原理程序

;**********************; ;* 数/模转换实验1 *; ;* 产生锯齿波 *; ;**********************; io0832a equ 290h code segment assume cs:code start: mov cl,0 mov dx,io0832a lll: mov al,cl out dx,al add cl,10 push dx mov ah,06h ;判断是否有键按下 mov dl,0ffh int 21h pop dx jz lll ;若无则转LLL mov ah,4ch ;返回 int 21h code ends end start ;**********************; ;* 数/模转换实验2 *; ;* 产生正弦波 *; ;**********************; data segment io0832a equ 290h Sin db 80h,96h,0aeh,0c5h,0d8h,0e9h,0f5h,0fdh db 0ffh,0fdh,0f5h,0e9h,0d8h,0c5h,0aeh,96 h db 80h,66h,4eh,38h,25h,15h,09h,04h Db 00h,04h,09h,15h,25h,38h,4eh,66h ;正弦波数据 data ends code segment assume cs:code,ds:data start: mov ax,data mov ds,ax ll: mov si,offset sin ; 置正弦波数据的偏移地址为SI mov bh,32 ;一组输出32个数据 lll: mov al,[si] ;将数据输出到D/A转换器 mov dx,io0832a out dx,al mov ah,06h mov dl,0ffh int 21h jne exit mov cx,1 delay: loop delay ;延时 inc si ;取下一个数据 dec bh jnz lll ;若未取完32个数据则转lll jmp ll exit: mov ah,4ch ;退出 int 21h code ends end start ;****************************; ;* AD转换器2--示波器 *; ;* 采集数据在屏幕是作图 *; ;****************************; io0809b equ 299h code segment assume cs:code start: mov ax,0012h ;设屏幕显示方式为VGA 640X480模示 int 10h start1: mov ax,0600h int 10h ;清屏 and cx,0 ;cx为横坐标draw: mov dx,io0809b ;启动A/D转换器通道1 out dx,al mov bx,200;500 ;延时delay: dec bx jnz delay

浙江大学微机原理(DSP)考试必背(知识点及基本程序部分)

第二章系统控制与中断+老师复习时专讲的中断内容 1、【强记】void InitSysCtrl( ) void InitSysCtrl() { EALLOW; WDCR=0x0068; //屏蔽WatchDog PLLCR=0xA; //锁相环设为10/2=5倍频(使系统时钟30MHz*5=150MHz) //PLLCR可设0x0~0xA,其中0x0和0x1等效,均为1/2=0.5倍频for(i= 0; i< ( (131072/2)/12 ); i++) {;} HISPCP=1; // HISPCLK=SYSCLK/HISPCP*2,从而有75MHz LOSPCP=2; // LOSPCLK=SYSCLK/LOSPCP*2,从而有37.5MHz PCLKCR=0x0D0B; //写1开启部分外设,这里开启了SCIA/B,SPI,ADC,EV A/B //0000 1101 0000 1011 EDIS; } 2、解释WatchDog(看门狗)工作原理(记住位域名称与功能) 片内振荡器时钟OSCCLK经过分频后进入8位看门狗计数器,当计数器上溢,则可输出中断或复位信号。当看门狗使能,若系统正常运行,则需用户周期性地在看门狗计数器上溢前向复位寄存器WDKEY写入0x55+0xAA来清零计数器,若程序受干扰而跑飞,则看门狗的中断或复位信号可使系统恢复至正常状态,提高系统稳定性与可靠性。 补充——涉及寄存器: 系统控制和状态寄存器SCSR:WDENINT指定看门狗输出复位信号还是中断信号;WDOVERRIDE指定是否允许用户修改控制寄存器WDCR的WDDIS位; 计数寄存器WDCNTR:低8位连续加计数,可由复位寄存器WDKEY立即清零; 复位寄存器WDKEY:连续写入0x55+0xAA可清零计数寄存器WDCNTR,写入其它序列则立即触发看门狗复位事件。读该寄存器返回控制寄存器WDCR值; 控制寄存器WDCR:WDFLAG为看门狗复位状态标志位,若复位事件由看门狗触发则置1,用户写1清零;WDDIS写1使能,写0屏蔽看门狗;WDCHK必须写101才能写WDCR 寄存器;WDPS为看门狗计数器时钟相对于OSCCLK/512的分频系数。 3、解释PLL(锁相环)工作原理 PLL负责把片内振荡器时钟或外部时钟经过倍频转化为系统时钟SYSCLKOUT。 当引脚XF_XPLLDIS为低电平:PLL被禁止,系统时钟直接引用外部时钟源。 当引脚XF_XPLLDIS为高电平:若PLLCR为0,则PLL被旁路,片内振荡器时钟OSCCLK被二分频;若PLLCR为n(n=0x1~0xA),则PLL使能,OSCCLK被(n/2)倍频。 4、【强记】为了使CPU定时器工作在指定频率,应如何设置 void InitSysCtrl(); void InitCputimer(void) //定时器初始化,中断周期为1ms(1kHz) { EALLOW; TIMER0TPR=149;//CPU定时器分频寄存器,150MHz/(149+1)=1MHz的计时器时钟TIMER0TPRH=0;//CPU定时器分频寄存器的高位置0 TIMER0PRD=(long)999;//设置CPU定时器周期寄存器,1MHz/(999+1)=1kHz

微机原理C答案

微机原理期末试题答案(A) 一、简答题(每小题5分,共30分) 1.微型计算机由哪两大部分组 答:微型计算机由硬件系统和软件 系统两大部分组成。其硬件框图如右 图。 2.说明8088CPU内部14个寄存 器的作用? 答:8088CPU的14个寄存器的作 用:通用数据寄存器AX,BX,CX, DX用来存放数据;堆栈指针寄存器SP存放堆栈区的偏移地址,基数指针寄存器BP存放基地址;变址寄存器SI,DI用于指令的变址寻址;指令指针寄存器IP用来控制CPU的指令执行顺序,PSW是处理机状态字,存放8088CPU在工作过程中的状态。 3.满足哪些条件8088CPU才能响应可屏蔽中断INTR? 答:响应的条件为:INTR为高电平;指令执行结束;CPU处于开中断状态(IF=1);没有发生复位、保持和非屏蔽中断请求;开中断指令,中断返回指令执行完,需要再执行一条指令,才能响应INTR 的请求。 4.总线是如何定义的?分为哪几类?各类总线的应用场合是什么? 答:总线是连接两个以上数字元件的信息通路。总线可分为:片内总线、元件级总线、内总线(系统总线)、外总线(通信总线)。 片内总线是连接集成电路芯片内部各功能单元的信息通路;元件级总线是连接一块电路板内各元器件;内总线用以实现微机系统与各扩展插件板之间的相互连接;外总线用以实现微机系统与微机系统、微机系统与其他仪器或外设之间的相互连接。 5.什么是总线竞争?为什么当微机发生总线竞争时,微机将无法正常工作? 答:总线竞争就是在同一总线上,同一时刻有两个或两个以上的器件输出其状态。当微机发生总线竞争时,总线上的状态难以确定,使得微机无法工作,很可能会损坏微机的芯片。 6.说明微机中常用的外设编址方法及其优缺点。 答:微机中常用的外设编址方法有统一编址和独立编址两种。统一编址是将存储器与外设地址统一编排在同一地址空间中;独立编址是将存储器和外设分别编排在不同的地址空间。 统一编址的优点:对外设的操作指令丰富,操作灵活方便;缺点:存储器的扩展空间受到限制,程序维护困难。独立编址的优点:不占用存储器的扩展空间,程序维护容易;缺点:操作指令简单,操作不灵活。 二、读下列指令,完成题中要求(每空3分,共30分) 1. 指出下列指令中第二个操作数的寻址方式 ⑴MOV AX,0034H 立即数寻址⑵SUB AX,AX 寄存器寻址 ⑶MOV AX,[BX] 寄存器间接寻址⑷ADD AX,[1000H] 直接寻址 ⑸MOV AL,ARAY1[SI] 寄存器相对寻址⑹MOV AX,[BX][SI] 基址变址寻址 2. 设寄存器AX.、BX、CX、DX的初值均为0000H: MOV AX,1234H ADD BX,AX PUSH BX POP DX DEC CX 执行上面的一组指令后寄存器AX.、BX、CX、DX的内容分别为1234H、1234H、0FFFFH、1234H。

福建师范大学微机原理期末考卷(有答案)

福建师范大学微机原理期末考试试卷 班级:___电子信息________ 姓名:_zhouyi__________学号: ____________ 一、判断题(每题1分,共10分) 1、十六位微型机的含义是:这种机器能同时处理十六位二进制数。(√) 2、微机的字长愈长,计算精度愈高,指令处理功能愈强。(√) 3、MOV指令要影响标志位。(×) 4、JMP SHORT NEXT称为近转移。(×) 5、8086与8088在软件上不一定完全兼容。(×) 6、端口是位于主机与外设之间的总称。() 7、DMA是一种不需要CPU介入的高速数据传送。() 8、8253中的计数可以通过初始化设置成加计数或减计数。() 9、内部中断的优先权总是高于外部中断。() 10、两片8259A级连后可管理16级中断。() 二、选择题(每题1分,共20分) 1、属于数据寄存器组的寄存器是_____C___。 A.AX,BX,CX,DS B.SP,DX,BP,IP C. AX,BX,CX,DX D.AL,DI,SI,AH 2、在8086和8088汇编语言中,一个字能表示的有符号数的范围是_____B___。 A.-32768≤n≤32768 B.-32768≤n≤32767 C.-65535≤n≤65535 D.-65536≤N≤65535 3、某数存于内存数据段中,已知该数据段的段地址为2000H,而数据所在单元的偏移地址为0120H,该数的在内存的物理地址为__B______。 A.02120H B.20120H C.21200H D.03200H 4、在8086/8088微机系统中,将AL内容送到I/O接口中,使用的指令是___D_____。 A.IN AL,端口地址 B.MOV AL,端口地址 C.OUT AL,端口地址 D.OUT 端口地址,AL 5、与十进制数58.75等值的十六进制数是__B______。 A.A3.CH 6、将十六进制数FF.1转换成十进制数是__C______。

相关主题
相关文档 最新文档