硬件基础实验指导书与答案

合集下载

计算机硬件基础课后习题答案

计算机硬件基础课后习题答案

第1章计算机概述1:计算机的类型有哪些?简述它们的特点目前国际上比较流行的计算机分类是:巨型计算机、主机(大、中型机)、小型计算机、和个人计算机。

巨型计算机指运算速度快、存储容量大的高性能计算机,它采用了大规模并行处理的体系结构,CPU由数以百计、千计的处理器组成,有极强的运算处理能力。

计算机的运算速度平均每秒1000万次以上;存贮容量在1000万位以上。

巨型机的研制水平是一个国家计算机技术水平的重要标志。

主机(大、中型机)大型机的运算速度一般在100万次/秒至几千万次/秒,通常用每秒运行多少万次来作为运算速度单位,字长32~64位,主存容量在几百兆字节以上,。

它有比较完善的指令系统,丰富的外部设备和功能齐全的软件系统。

其特点是通用,有极强的综合处理能力。

中型机的规模介于大型机和小型机之间。

小型机的机器规模小、结构简单、设计试制周期短,便于及时采用先进工艺技术,软件开发成本低,易于操作维护。

微型计算机是以微处理器(CPU)为核心,通过系统总线(BUS)将存储器、外围控制电路、输入输出接口连接起来的系统称为微型计算机。

若配有相应的外围设备(如显示器、键盘、打印机等)和系统软件,就组成了微型计算机系统(Micro Computer System)。

微型计算机具有以下特点:◆集成度高,体积小,重量轻,价格低廉;◆部件标准化,易于组装及维修;◆高可靠性及适应性。

2:微型计算机简单分哪几类?各有什么特点?微型计算机简单可分为常见的台式微型计算机即个人计算机PC,笔记本,及掌上电脑台式机具有:集成度高、体积较小价格低廉、部件标准化、,易于组装维修、高可靠性及适应性,计算能力强等特点;笔记本具有体积小重量轻,便于携带移动性强,耗电少功能强的特点;掌上电脑具有更小的体积、更轻的重量、更少的耗电和更强的可移动性的特点,其方便的上网功能正将加速“处处计算,移动计算”的时代到来。

;Flash存储器与RAM相比具有非易失性的优势,但是寿命短,可擦写次数少,读写速度慢,且不能完成完全随机读写。

淮阴工学院 计算机工程学院 硬件实践教学指导书 刘虎

淮阴工学院 计算机工程学院 硬件实践教学指导书 刘虎

计算机硬件实践教学指导书计算机工程学院2011年5月目录1.硬件设计实习指导书 1 2. 成绩评定及实习报告要求 3《硬件设计实习指导书》一.硬件实践目的1.掌握PROTEL的使用;2.掌握电路设计的一般方法;3.掌握电路仿真的过程;4.掌握硬件设计及焊接方法;5.提高查阅资料的能力和撰写论文报告的能力;6.提高分析问题、解决问题的能力。

二.硬件实践内容1.交通信号灯2.电子时钟3.计时器4.计数器5.防盗报警6.计价器7.温度计8.信号发生器9.工业监控10.电机控制三.硬件实践要求1.总体要求(1)查阅有关资料;(2)使用PROTEL绘制电路原理图;(3)在实验电路板上焊接电路;(4)编程、调试;(5)撰写2000字的实践报告,并附电路原理图、软件流程图以及软件。

2.具体要求(1)模拟交通灯要求:通过单片机的P1、P3口按位输出0或1,控制红、绿、黄三色发光二极管按照交通灯的规律亮或者灭。

编写程序,调试运行,使发光二极管按照交通灯的规律亮或者灭。

(2)定时器要求:利用定时器/计数器定时2s,某键按下去开始计时,定时时间到红灯亮,再按一下停止计时。

(3)统计按键的次数要求:用八个发光二极管以8位二进制数形式显示按键的次数。

(4)防盗报警要求:发现有人进入房间时报警。

用按键按下模拟有人进入,用指示灯亮作报警信号。

(5)温度计要求:对温度信号采集,并用8个发光二极管指示。

温度信号用电位器模拟,A/D转换器用ADC0809。

(6)信号发生器要求:使用D/A转换器,产生三角波、梯形波、锯齿波等。

DAC0832作D/A。

(7)监控开关的状态要求:使用发光二极管,监控开关的状态。

开关合上,对应的灯亮。

(8)中断(工业顺序控制)实验要求:用单片机的P1—P7做输出口接八只发光二极管,用两个外部中断控制运行和模拟故障,编写程序,使发光二极管循环点亮模拟顺序控制,有故障时使P7发光点亮报警。

(9)电子音响(定时器/计数器)实验要求:用定时器0或定时器1定时产生不同的频率,利用开关组进行选择,从P3口输出方波频率,然后送驱动电路,推动喇叭发声。

硬件基础习题答案

硬件基础习题答案

硬件基础习题答案硬件基础习题答案在学习硬件基础时,习题是提高理解和掌握能力的重要工具。

下面,我将为大家提供一些常见的硬件基础习题及其答案,帮助大家更好地理解和应用相关知识。

1. 什么是计算机硬件?答案:计算机硬件是指计算机系统中所有物理组件的总称,包括主机、显示器、键盘、鼠标、内存、硬盘等。

2. CPU是计算机的核心组件,请问CPU的全称是什么?答案:CPU的全称是中央处理器(Central Processing Unit)。

3. 什么是存储器?答案:存储器是计算机中用于存储数据和程序的设备,包括内存和外存。

4. 请简述内存和硬盘的区别。

答案:内存是计算机中临时存储数据和程序的地方,数据在断电后会丢失;硬盘是永久存储数据和程序的设备,数据不会因断电而丢失。

5. 什么是主板?答案:主板是计算机中最重要的电路板,它连接和支持各种硬件设备,是计算机系统的核心组件。

6. 请解释什么是操作系统。

答案:操作系统是计算机系统中的一个软件,它管理和控制计算机的硬件和软件资源,为用户提供一个方便、高效的工作环境。

7. 什么是二进制?答案:二进制是计算机中使用的一种数制,只包含0和1两个数字。

计算机通过二进制来表示和处理数据。

8. 请简述计算机的工作原理。

答案:计算机的工作原理可以简单概括为输入、处理和输出三个步骤。

首先,用户通过输入设备输入数据和指令;然后,计算机的CPU对输入的数据和指令进行处理;最后,计算机通过输出设备将处理结果显示给用户。

9. 请解释什么是计算机网络。

答案:计算机网络是指将多台计算机通过通信设备和通信介质连接起来,实现信息共享和资源共享的系统。

10. 什么是网卡?答案:网卡是计算机中用于连接计算机与网络之间的设备,它负责将计算机的数据转换成网络可以识别的形式,并进行传输。

以上是一些常见的硬件基础习题及其答案。

通过解答这些习题,可以帮助大家巩固和加深对硬件基础知识的理解。

同时,希望大家在学习的过程中,能够通过实践和实际操作来加深对硬件知识的掌握,提高自己的实际应用能力。

计算机硬件技术基础实验答案程序

计算机硬件技术基础实验答案程序

实验一:简单程序设计实验(1)编写一个32 位无符号数除法的程序,要求将存放在NUM1 中的32 位无符号数与存放在NUM2 中的16 位无符号数相除,结果存放在程序流程图略。

参考源程序:NUM1 DD 2A8B7654HNUM2 DW 5ABCHNUM3 DW ?NUM4 DW ?ASSUME DS:DATA, CS:CODE;数据段寄存器初始化MOV AX, WORD PTR NUM1MOV DX, WORD PTR NUM1+2DIV NUM2MOV NUM3,AXMOV NUM4,DXEND START(2)编写一个拆字程序。

要求将存放在ARY 单元的2 位十六进制数X1X2 拆为X1 和X2 两部分,并以0X1 和0X2 的形式分别存入ARY+1 和ARY+2 单元中。

程序流程图略。

参考源程序:DATA SEGMENTARY DB 2AH,?,?DATA ENDSCODE SEGMENTASSUME DS:DATA, CS:CODESTART:MOV AX,DATAMOV DS,AXMOV SI,OFFSET ARY MOV AL,[SI] ;取ARY 的偏移地址;取16进制数至ALNUM3 和NUM4 中。

DATA SEGMENTDATA ENDS CODE SEGMENTSTART: MOV AX,DATAMOV DS,AXCODE MOV AH,4CHINT 21HENDS;正常返回DOS 系统MOV BL,ALAND AL,0F0H;取16进制数的高四位,即X1SHR AL,4MOV [SI+1],AL ;存0X1 MOV AL,BLAND AL,0FH; 取16 进制数的低四位,即X2MOV [SI+2],AL ;存0X2MOV AH,4CHINT 21HENDSEND STARTCODE实验二:分支程序设计实验(1)编写一个字符比较程序,比较 3 个无符号字节数 A ,B ,C 的大小,并根据比较结果 对变量 K 赋值:如果 3 个数不相等,则 K=0 ; 如果 3 个数中有两个相等,则 K=1 ; 如果 3 个数都相等,则 K=2 。

计算机硬件实验指导书(崔丽群))

计算机硬件实验指导书(崔丽群))

《计算机硬件基础》课程实验指导书辽宁工程技术大学软件学院2010年2月目录实验上机操作范例实验一汇编语言程序的调试与运行实验二简单程序设计实验三循环程序设计实验四综合程序设计(一)实验五综合程序设计(二)实验六高级汇编技术实验上机操作范例【范例】完成具有如下功能的分段函数1 X>0Y = 0 X=0-1 X<0其中:X存放在内存单元中,Y为结果单元。

【问题分析】根据题意画出程序流程图,如图1所示。

图1 分段函数的程序流程图根据程序流程图编写如下程序DSEG SEGMENTX DW ?Y DW ?DSEG ENDSCSEG SEGMENTASSUME CS: CSEG, DS: DSEGSTART:MOV AX, DSEGMOV DS, AXLEA SI, XMOV AX, [SI]AND AX, AXJNS LP1MOV Y, 0FFH ; X<0JMP END1LP1: JNZ LP2MOV Y, 00HJMP END1LP2: MOV Y, 01HEND1: MOV AH, 4CHINT 21HCSEG ENDSEND START汇编语言程序的开发分为以下4个部分:编辑(生成.asm文件)—→汇编(生成.obj文件)—→连接(生成.exe文件)—→调试。

下面分别通过两种上机环境介绍汇编语言源程序从编辑到生成一个可执行文件(.exe文件)的过程。

一种方法是利用Microsoft公司提供的MASM5版本的工具包(包括edit.exe、masm.exe、link.exe、debug.exe),如图2所示;另一种是利用汇编集成编辑器来完成。

图2 D盘下的MASM5工具包下面的例子按以下几个步骤完成:(1)先编写一个fenduan.asm文件;(2)保存并通过运行masm.exe生成目标文件fenduan.obj;(3)再利用link.exe生成可执行文件fenduan.exe;(4)运行fenduan.exe文件;(5)运行debug fenduan.exe后即可对程序进行跟踪调试。

计算机硬件基础课后答案

计算机硬件基础课后答案

2-18(1)1278H+3469H=0001 0010 0111 1000+0011 0100 0110 1001=0100 0110 1110 0001SF=0 ZF=0 AF=1 PF=1 CF=0 OF=0(2)54E3H-27A0H=0101 0100 1110 0011+1101 1000 0110 0000=1 0010 1101 0100 0011SF=0 ZF=0 AF=0PF=0 CF=0 OF=0当进行16位或8位加或减运算时,若最高位产生进位或借位时,将CF置1,否则为0,当进行带符号数补码运算时,运算结果超出了机器所能表示的数值范围,就产生溢出,将OF置1,否则OF置0,即OF用来表示有符号数运算的溢出,而CF则用来表示无符号数运算的溢出。

2-24答:存储慢速设备(存储器或I/O设备)的数据时,必须插入等待周期T W来延长总线周期,插入T W多少取决于CPU完成独立操作所需时间。

2-26读存储器写存储器4-5DATASEG SEGMENTMY1B DB ‘PERSONAL COMPUTER’MY2B DB 20MY3B DB 14HMY4B DB 00010100BMY5W DW 20 DUP(?)MY6W EQU 100DATASEG ENDS4-6(1) BX = (2);(2) AL = (2);(3) CX = (10);(4) DL = (10).4-7(1) V AR1、V AR2、V AR3的偏移地址是30H,3AH,40H;(2) DATA1的值是50H,CNT的值是16;(3) V AR2+2的内容为2。

4-8(2)X为字变量,Y则可以字节方式访问X;(4)X为字变量,初值放在内存中的顺序为88H和62H,Y为字节变量,初值依次为62H和88H;(5)X和Y均为字变量,初值不同,因为X为16进制数,Y为10进制数。

4-9(1)源操作数1000超过字节范围(3)CMP的两个操作数不能同时为存储器操作数(5)JNZ的转移位置不能用字变量给出4-11(1) DATA1 DB 86H, 27H, 23H, 00H, 24H, 1AH(2) DATA2 DW 0B430H, 1062H或者(1)DATA1 LABEL BYTEARRAY DW 2786H,23H,1A24H(2) DATA2 LABEL WORDARRAY DB 30H,0B4H,62H,10H4-12DATA SEGMENT WORDTABLE DB 100 DUP(0)DATA ENDSSTACK SEGMENT WORD STACK ‘STACK’DB 1024 DUP(0)STACK ENDSCODE SEGMENT ‘CODE’ASSUME DS:DATA,SS:STACK, CS:CODEMAIN PROC FARSTART: PUSH DSMOV AX, 0PUSH AXMOV AX, DATAMOV DS, AXMOV ES, AXLEA BX, TABLEMOV CX, 100LOP: MOV BYTE PTR [BX], 64HINC BXLOOP LOPRETMAIN ENDPCODE ENDSEND START4-15TRAN MACRO X, Y, Z ;X, Y, Z为源、目标数据块的首地址,Z为数据块的长度MOV CX, ZMOV SI, OFFSET XMOV DI, OFFSET YCLDREP MOVSBENDM4-16MOV AX, WORD PTR XADD AX, WORD PTR YMOV WORD PTR Z, AXMOV AX, WORD PTR X+2ADC AX, WORD PTR Y+2MOV WORD PTR Z+2, AX4-17DATA SEGMENTSTRG DB 1000 DUP(?)STR1 EQU STRG+7STG2 EQU STRG+27STRSE EQU 50DATA ENDSSTACK SEGMENT PARA STACK ‘STACK’DB 100 DUP(?)STACK ENDSCODE SEGMENTASSUME CS:CODE, DS:DATA, ES:DATA MAIN: MOV AX, DATAMOV DS, AXMOV ES, AXMOV CX, STRSEMOV SI, OFFSET STG1MOV DI, OFFSET STG2CLDPUSH SIADD SI, STRSE-1CMP SI, DIPOP SIJL OKSTDADD SI, STRSE-1ADD DI, STRSE-1OK: REP MOVSBMOV AX, 4C00HINT 21HCODE ENDSEND MAIN4-18(1)DATA SEGMENTDATA ENDSCODE SEGMENT…MOV AH, 01H ; 从键盘输入一个字符,其ASC码值在AL中INT 21HCMP AL, 41HJZ P0CMP AL, 42HJZ P1…CMP AL, 4AHJZ P9JMP EXITP1: …RETP2: …RET……P9: …RETEXIT: MOV AH, 4CHINT 21H….(2)DATA SEGMENTBASE DW P0, P1, ……,P9DATA ENDSCODE SEGMENT…MOV AH, 01H ; 从键盘输入一个字符,其ASC码值在AL中INT 21HCMP AL, 'A' ; 判别字符是否位于‘A’到‘J’之间JB EXITCMP AL, 'J'JA EXITSUB AL, 'A' ;在正确范围之内,根据表内地址分支MOV BL, ALMOV BH, 0SHL BX, 1JMP BASE[BX]P1: …RETP2: …RET……P9: …RETEXIT: MOV AH, 4CHINT 21H….4-19LEA BX, xLEA SI, yLEA DI, sumADD BX, 7ADD SI, 7ADD DI, 8 ;和可能要9个字节MOV CX, 8CLCLOP: MOV AL, [BX]ADC AL, [SI]DAAMOV [DI], ALDEC BXDEC SIDEC DIDEC CXJNZ LOPMOV AL, 0ADC AL, 0MOV [DI], AL4-20MOV SI, OFFSET FIRSTMOV CX, 0 ;CX中存放A的个数LOOP: MOV AL, [SI]CMP AL, ‘$’JZ NEXTCMP AL, ‘A’JNE LPINC CXLP: INC SIJMP LOOPNEXT: ……4-21DATA SEGMENTDATA_W DW …………;若干个数COUT EQU ($-DATA_W)/2COUT1 DB 0COUT2 DB 0COUT3 DB 0DATA ENDSSTACK SEGMENT PARA STACK ‘STACK’DB 100 DUP(0)STACK ENDSCODE SEGMENTASSAUM CS:CODE,DS:DATASTART PROC FARPUSH DSMOV AX, 0PUSH AXMOV AX, DATAMOV DS, AXMOV DX, 0 ;正数、负数、0暂时分别存在BL、BH、DL 中MOV BX, 0LEA SI, DATA_WMOV CX, COUTNEXT: MOV AX, [SI]CMP AX, 0JG LP1JL LP2INC DLJMP OKLP1: INC BLJMP OKLP2: INC BHOK: ADD SI, 2LOOP NEXTMOV COUNT1,BLMOV COUNT2,BHMOV COUNT3,DLRETSTART ENDPCODE ENDSEND START4-22DATA SEGMENTARRAY D B …………;若干个数COUT EQU $-ARRAYMAX DB ?MIN DB ?DATA ENDSSTACK SEGMENT PARA STACK ‘STACK’DB 100 DUP(0)STACK ENDSCODE SEGMENTASSAUM CS:CODE,DS:DATASTART PROC FARPUSH DSMOV AX, 0PUSH AXMOV AX, DATAMOV DS, AXLEA BX, ARRAYMOV CX, COUTGOT: MOV AL, [BX]TEST AL, 01HJZ NEXTINC BXJMP GOTNEXT: MOV DH, ALMOV DL, AL ;DH暂存最大偶数,DL暂存最小偶数,初始置首个偶数LEA BX, ARRAYLOP: MOV AL, [BX]TEST AL, 01HJNZ NEXT2CMP AL, DLJA NEXT1MOV DL, ALJMP NEXT2NEXT1: C MP AL, DHJB NEXT2MOV DH, ALNEXT2: I NC BXLOOP LOPMOV MAX, DHMOV MIN, DLRETSTART ENDPCODE ENDSEND START4-24LEA BX, STRINGMOV CX, 80 NEXT: MOV AL, [BX]CMP AL, 20HJZ OKINC BXLOOP NEXTMOV CL, -1JMP FINOK: NEG CXADD CX, 80FIN: …………4-25LEA BX, STRINGMOV CH, 0LOP: MOV AL, [BX]CMP AL, ODHJZ EXITINC CHINC BXJMP LOPEXIT: …4-26(1)LEA SI,STRING1LEA DI,STRING2MOV C X,20CLDREP MOVSB(2)LEA SI,STRING1LEA DI,STRING2ADD SI,19ADD DI,19MOV C X,20STDREP MOVSB(3)MOV A L,20HLEA DI, STRING1MOV C X,20CLDREPNZ SCASBJZ FOUNDMOV D L,0 ;未找到FOUND:DEC DIMOV BX,DIMOV DL,01H ;找到(4)LEA SI,STRING1LEA DI,STRING2MOV C X,20CLDREP CMPSBJNZ NEQMOV B L,0 ;相同NEQ: M OV BL,01H ;不相同4-28(1) DISPLAY PROCMOV CH, 4MOV CL, 4MOV BX, AX ;(*)NEXT: ROL BX, CLMOV DL, BLAND DL, 0FHADD DL, 30HCMP DL, 39HJBE PRINTADD DL, 07HPRINT: MOV AH, 2INT 21HDEC CHJNZ NEXTRETDISPLAY ENDP(2) 与(1)基本相同,仅将(*)语句修改为MOV BX, WORDTEMP(3) 将(*)句替换为下列语句(假设子程序中并未保护现场寄存器,主程序入栈的参数就是预显示的数据)MOV BP, SPMOV BX, [BP+2]4-29;模块1,文件名MAIN.ASMEXTRN DISPLAY: FAR ;引用外部符号PUBLIC MESG ;定义外部符号DATA1 SEGMENTMESG DB 'ASSEMBLER$'DATA1 ENDSCODE1 SEGMENTASSUME CS: CODE1, D S: DATA1MAIN: MOV AX, DATA1MOV DS, AX ;装入段基址PUSH DSCALL DISPLAYMV AH, 4CHINT 21HCODE1 ENDSEND MAIN;模块2,文件名DISPLAY.ASMEXTRN MESGPUBLIC DISPLAY ;定义外部符号DATA2 SEGMENTDB 100UP(?)DATA2 ENDSCODE2 SEGMENTASSUME CS: CODE2, DS: DATA2DISPLAY PROC FARMOV AX, DATA2MOV DS, AX ;装入段基址MOV DX, OFFSET MESGMOV AH, 9 ;屏幕显示INT 21HRETDISPLAY ENDPCODE2 ENDS4-30SUM1 PROC NEARCMP CX,0JZ EXIT1MOV AX,0 ;数组和在AX中AGAIN:ADD AL,[SI]ADC AH,0 ;和或许为字INC SILOOP AGAINEXIT1:RETSUM1 ENDP4-31STACK SEGMENT PARA STACK ‘STACK’DB 100 DUP (0)STACK ENDSCODE SEGMENTASSAUM CS: CODESTART PROC FARPUSH DSMOV AX, 0PUSH AXMOV AX, DATAMOV DS, AXMOV CX, 4MOV DX, 0.LOP1: MOV AH, 1INT 21HCMP AL, 46HJA EXIT ;字符ASCII码不在0~9,A~F之间CMP AL, 40HJA LOP2CMP AL, 39HJA EXIT ;字符ASCII码不在0~9,A~F之间CMP AL, 30HJB EXIT ;字符ASCII码不在0~9,A~F之间SUB AL, 30HJMP NEXTLOP2: SUB AL, 37HNEXT: MOV AH, 0PUSH CXMOV CL, 4ROL DX, CLPOP CXADD DX, AXLOOP LOP1EXIT: RETSTART ENDPCODE ENDSEND START5-41K X 8 : 末地址=1000H+3FFH=13FFH 2K X 8 : 末地址=1000H+7FFH=17FFH 4K X 8 : 末地址=1000H+FFFH=1FFFH 8K X 8 : 末地址=1000H+1FFFH=2FFFH 5-5所占地址空间为:20000H~27FFFH5-61# 8000H~87FFH2# 8800H~8FFFH3# 9000H~97FFH4# A000H~A3FFH5# A400H~A7FFH6# A800H~ABFFH7# AC00H~AFFFH5-76-1IN AL, PORT_TCMP AL, 0FEH ;k0单独被按下,即最低位为0,其余位为高JZ NEXT1CMP AL, 0FDH ;JZ NEXT2MOV AL, 00H ;其他的情况,将灯全部不点亮OUT PORT_T, ALJMP EXITNEXT1: M OV AL, 01H ;K0被按下,LED0~LED7顺次点亮,送1则对应的灯亮MOV CX, 8LOOP1: OUT PORT_T, ALCALL DELAYROL AL, 1LOOP LOOP1JMP EXITNEXT2: M OV AL, 80H ;K1被按下,LED0~LED7反序点亮,送1则对应的灯亮MOV CX, 8LOOP2: OUT PORT_T, ALCALL DELAYROR AL, 1LOOP LOOP2EXIT: ….6-2 解:MOV CX,100MOV BX,OFFSET DATASIN-TEST:IN AL,STATUSTEST AL,80HJZ IN-TESTIN AL,DATAS_PORTMOV [BX],ALINC BXLOOP IN-TEST6-3 解:MOV BX,OFFSET STRINGWAIT:IN AL,STATUSAND A L,80HJNZ WAITMOV AL, [BX]OUT DATAS,ALCMP AL,0DHJZ ENDINC BXJMP WAITEND:……6-6执行INT 8后CPU将PSW, IP, CS压入堆栈,堆栈的情况如下图:SP 00FAH00FBH00FCH00FDH00FEH00FFHSP=00FAH, SS=0300H, IP=0040H, CS=0100H因为IF,.TF进入中断后自动为零,所以PSW=0040H.6-9IRQ3申请中断,IRQ3正在被服务,20H, 05H6-12MOV DX, 0FFDCHMOV AL, 00010011B ;ICW1OUT DX, ALMOV DX, 0FFDDHMOV AL, 90H ;ICW2OUT DX, ALMOV AL, 00000001B ;ICW4OUT DX, AL6-17RRREG DB ?SRREG DB ?IMREG DB ?…MOV AL, 00001010B ;读IRROUT 20H, ALIN AL, 20HMOV RRREG, ALMOV AL, 00001011B ;读ISROUT 20H, ALIN AL, 20HMOV SRREG, ALIN AL, 21H ;读IMRMOV IMREG, AL7-9①8255初始化:C口工作在工作方式0,其中C口上半部输入,C口下半部输出,于是8255控制字应为00001000B,即08H;设控制口地址为CTRL,C口地址为PORTC,则8255初始化程序如下:MOV AL, 08HMOV DX, CTRLOUT DX, AL②中断服务程序:设有一延时子程序名为DELAY,则中断服务子程序为:ALARM PROC FARPUSH AX ;现场保护PUSH DXMOV DX, PORTC ;查询PC7确认微导线状态IN AL, DXTEST AL, 80H ;JZ EXIT ;如PC7为0表示微导线未断,退出服务程序MOV DX, CTRL ;通过写控制口,达到单独设置PC0的输出值的目的MOV AL, 10000000BLP: OUT DX, ALCALL DELAY ;调用延时程序,使PC0按指定频率输出脉冲XOR AL, 00000001B ;采用异或指令实现最后一位取反,而其他位不变的目的JMP LPPOP DX ;现场恢复POP AXIRETENDP7-11MOV AL, 00000010B ;8255初始化,A口输出,B口输入,均工作在工作方式0MOV DX, 3C3HMOV DX, 3C0H ;使A口的初始输出为全1,即使继电器线圈无电流OUT DX, ALMOV AL, 0FFHLP: MOV DX, 3C1HIN AL, DXNOT ALMOV DX, 3C0HOUT DX, ALCALL DELAY ;调用延时程序JMP LP。

硬件实验报告3

硬件实验报告3

计算机硬件基础实验报告实验三实验1:四位二进制数与四位格雷码之间的相互转换一、实验目的掌握组合逻辑电路的设计方法二、实验仪器及实验器件器件:YB3262实验箱,1片74LS00与非门,1片74LS04非门,1片74LS86异或门,3片74LS20与非门,导线若干。

三、实验步骤及结果(1)四位二进制数转换成格雷码实验要求:利用所给的芯片设计电路并完成实验,实现将四位二进制数转换成格雷码的功能解:通过四位二进制代码与对应格雷码的比较,我们以A、B、C、D代表输入的四位数,以Y1、Y2、Y3、Y4代表输出的四位格雷码,写出如下逻辑表达式:Y1=A , Y2=A'B+AB' ,Y3=B'C+BC' , Y4=C'D+CD'利用异或门,设计出如下逻辑图:最后将一片74LS86异或门接入电路中进行实验。

(2)格雷码转换成四位二进制数实验要求:利用所给的芯片设计电路并完成实验,实现将格雷码转换成四位二进制数的功能解:通过四位二进制代码与对应格雷码的比较,我们以A、B、C、D代表输入的格雷码的四位数,以Y1、Y2、Y3、Y4代表输出的四位二进制代码,写出如下逻辑表达式:Y1=A , Y2=A'B+AB' ,Y3=Y2'C+Y2C' , Y4=Y3'D+Y3D'利用异或门,设计出如下逻辑图:最后将一片74LS86异或门接入电路中进行实验。

实验2:使用74LS283实现余3码到8421BCD码的转换一、实验目的掌握组合逻辑电路的设计方法熟悉译码器、数据选择器、加法器的工作原理和逻辑功能掌握译码器、数据选择器、加法器的使用方法二、实验仪器及实验器件器件:YB3262实验箱,YB4325示波器,1片74LS283,1片74LS138,1片74LS151,1片74LS20与非门,导线若干三、实验内容要求:结合所提供的实验器件,设计以下题目,必须写出详细的设计过程,画出完整的逻辑电路图,记录实验结果。

数字电路实验指导书(14级数计软工)

数字电路实验指导书(14级数计软工)

计算机硬件基础实验指导书(2014级数计软工)每组2人;每个实验完成后,必须于下个实验前提交实验报告(纸质版)。

附录一数字电路实验箱的使用说明附录二数字电路实验器件引脚排列图实验仪器及实验器件需求每台实验箱需配备:1个示波器,1个面包板,1个万用表,1个电位器(可能实验箱上本身就有),若干导线。

所需芯片如下:(每台)74LS00 与非门1片74LS86 异或门1片74LS125 三态门1片74LS08 与门1片74LS04 非门1片74LS20 与非门3片74LS283 全加器1片74LS138 译码器1片74LS151 数据选择器1片74LS74 D触发器1片74LS112 JK触发器1片74LS161 计数器2片1、电子技术测量仪器的使用及门电路逻辑功能测试熟悉示波器和数字电路实验箱的使用方法,掌握脉冲信号参数的测试方法。

了解集成电路的外引线排列及其使用方法,测试各种逻辑门电路的逻辑功能。

一、实验目的了解数字实验箱的原理,掌握其使用方法了解TTL器件和CMOS器件的使用特点掌握基本门电路逻辑功能的测试方法二、实验仪器及实验器件器件:YB3262实验箱,YB4325示波器,1片74LS00与非门,1个万用表,1片74LS86异或门,1片74LS125三态缓冲器,1片74LS08与门,导线若干。

三、实验内容(1)数字实验箱的使用(参考附录一)用万用表测出固定直流稳压源的出去电压值。

用万用表分别测出十六路高低电平信号源和单次脉冲信号源的高低电平值,并观察单次脉冲前后沿(即输出波形的上升和下降时间)的变化。

分别用十六路高低电平信号源和单次脉冲信号源检查十二路高低电平指示灯的好坏。

用十六路高低电平信号源测试七段数码管的工作情况,观察是否正确显示0-9十个数码。

(2)分别写出74LS00,74LS86,74LS08,74LS125的逻辑表达式,列出其真值表,并分别对其逻辑功能进行静态测试。

74LS125三态缓冲器的逻辑功能为:E’为使能端,低电平有效。

计算机组成原理实验指导书

计算机组成原理实验指导书

计算机组成原理实验指导书一、实验目的。

本实验旨在通过实际操作,加深学生对计算机组成原理的理解,掌握计算机硬件的基本组成和工作原理,提高学生的动手能力和实际操作能力。

二、实验器材。

1. 计算机主机。

2. 显示器。

3. 键盘。

4. 鼠标。

5. 逻辑分析仪。

6. 示波器。

7. 电源。

8. 万用表。

9. 逻辑门集成电路。

10. 接线板。

11. 连接线。

三、实验内容。

1. 计算机硬件基本组成的实验。

通过拆卸计算机主机,了解各个硬件组件的作用和连接方式,包括主板、CPU、内存、硬盘、显卡、电源等。

并通过重新组装,加深对计算机硬件组成的理解。

2. 逻辑门电路实验。

使用逻辑门集成电路和连接线搭建基本的逻辑门电路,包括与门、或门、非门等,并通过逻辑分析仪观察输入输出的关系,加深对逻辑门原理的理解。

3. 示波器使用实验。

学习示波器的基本使用方法,观察不同信号的波形,了解数字信号和模拟信号的特点,加深对计算机输入输出原理的理解。

4. 电源电压测量实验。

使用万用表测量计算机主板各个电源接口的电压值,了解各个电源接口的作用和电压标准,加深对计算机电源原理的理解。

四、实验步骤。

1. 计算机硬件基本组成的实验步骤。

(1)拆卸计算机主机,观察各个硬件组件的位置和连接方式。

(2)了解各个硬件组件的作用和特点。

(3)重新组装计算机主机,检查各个硬件组件的连接是否正确。

2. 逻辑门电路实验步骤。

(1)根据实验指导书搭建与门、或门、非门电路。

(2)使用逻辑分析仪观察输入输出的关系,记录实验数据。

3. 示波器使用实验步骤。

(1)学习示波器的基本使用方法。

(2)使用示波器观察不同信号的波形,记录实验数据。

4. 电源电压测量实验步骤。

(1)使用万用表测量各个电源接口的电压值。

(2)比较测量结果与电压标准的差异,记录实验数据。

五、实验注意事项。

1. 在拆卸和重新组装计算机主机时,注意防止静电干扰,避免损坏硬件组件。

2. 在搭建逻辑门电路时,注意连接线的接触是否良好,避免信号传输不畅。

计算机硬件基础实验指导书

计算机硬件基础实验指导书

计算机硬件基础实验指导书合肥工业大学目录第一章实验系统概述 (1)1.1系统特点 (1)1.2软件环境 (2)1.3系统构成 (2)第二章手动“搭接”实验 (5)2.1 手动实验环境的建立 (5)2.2手控实验提示 (6)2.3手动“搭接”实验示例 (7)2.3.1十六位机运算器实验 (7)2.3.2通用寄存器实验 (37)2.3.3准双向I/O口实验 (41)2.3.4 存储器读写实验 (45)第三章手动“在线”实验 (52)3.1地址总线组成实验 (52)3.2十六位数据总线实验 (57)3.3 指令总线运用实验 (64)3.4微控制器实验 (71)第四章典型模型机实验 (82)4.1基本模型机的设计与实现 (82)4.2分段模型机的设计与实现 (87)第五章按键操作指南 (91)5.1键盘概述 (91)5.1.1键盘功能简介 (91)5.1.2键盘监控工作状态 (92)5.1.3初始待命状态 (92)5.2工作模式设置 (92)5.2.1设置为手动模式 (92)5.2.2设置为微程序模式 (93)5.2.3设置为组合逻辑模式 (94)5.3寄存器读写操作 (95)5.4存储器读写操作 (95)5.4.1程序与微程序读写选择操作 (95)5.4.2程序存储器ROM读写操作 (96)5.4.3微程序存储器uM读写操作 (96)5.4.4数据存储器RAM读写操作 (96)5.4.5内部存储器IM读写操作 (97)第六章集成开发环境的使用 (98)6.1集成开发环境主界面 (98)6.1.1菜单栏 (99)6.1.2工具栏 (100)6.1.3代码区 (100)6.1.4结构区 (100)6.1.5信息区 (101)6.1.6状态栏 (101)6.2设置环境参数 (101)6.2.1设置工作方式 (101)6.2.2设置通信端口 (101)6.3程序的建立 (102)6.3.1源程序文件操作 (102)6.3.2指令系统/微程序文件操作 (102)6.4程序的汇编与装载 (103)6.4.1源程序中的预调入命令 (103)6.4.2源程序中的伪指令 (103)6.4.3源程序的汇编与装载 (104)6.5调试实例 (104)6.5.1机器级调试 (104)6.5.2应用级调试 (104)6.5.3全速运行 (104)6.5.4暂停与复位 (104)6.5.5即时观察 (105)第一章实验系统概述1.1系统特点Dais-CMX16+是十六位体系结构的面向教学实践领域的原理计算机运用类实验装置。

计算机硬件基础实验报告

计算机硬件基础实验报告

计算机硬件基础实验报告计算机硬件基础实验报告一、引言计算机硬件是现代社会不可或缺的一部分,它是支撑信息时代发展的基石。

为了更好地理解计算机硬件的工作原理,我们在课程中进行了一系列的实验。

本实验报告将对实验过程、实验结果以及实验心得进行详细阐述。

二、实验目的本次实验的目的是通过实际操作,深入了解计算机硬件的基本组成和工作原理。

具体目标包括:1. 掌握计算机硬件的组成结构,包括主板、CPU、内存、硬盘等;2. 理解计算机硬件的工作原理,包括数据传输、运算处理等;3. 学会使用相应的工具和软件进行硬件实验。

三、实验过程1. 实验一:主板组装首先,我们需要将主板与CPU、内存、硬盘等硬件设备连接起来。

按照实验指导书的步骤,我们仔细研究了主板的布局和接口类型,然后进行了组装。

在组装过程中,我们需要注意硬件设备的插口类型和方向,确保连接正确。

2. 实验二:CPU运算实验在这个实验中,我们使用了一款CPU运算实验软件。

通过输入不同的指令和数据,我们可以观察到CPU的运算过程。

我们尝试了不同的指令和数据组合,观察到了CPU的不同运算结果。

通过这个实验,我们更加深入地了解了CPU的工作原理和运算过程。

3. 实验三:内存读写实验内存是计算机中非常重要的一个组成部分,它用于存储程序和数据。

在这个实验中,我们使用了内存读写实验软件。

通过输入不同的数据和地址,我们可以观察到内存的读写过程。

我们尝试了不同的数据和地址组合,观察到了内存的读写结果。

通过这个实验,我们更加深入地了解了内存的工作原理和数据存储过程。

四、实验结果1. 实验一:主板组装通过仔细组装,我们成功地将主板与CPU、内存、硬盘等硬件设备连接起来。

在连接完成后,我们进行了电源测试,确认所有硬件设备正常工作。

2. 实验二:CPU运算实验通过输入不同的指令和数据,我们观察到了CPU的不同运算结果。

我们发现,不同的指令和数据组合会导致不同的运算结果。

这进一步加深了我们对CPU运算原理的理解。

计算机硬件技术基础实验指导书V1.3

计算机硬件技术基础实验指导书V1.3

计算机硬件技术基础实验指导书东北大学计算中心二零一零年四月目录第1章汇编语言程序设计基础 (1)1.1汇编语言程序的语句 (1)1.1.1 语句格式 (1)1.1.2 数据定义 (1)1.2 汇编语言程序的结构 (2)1.3 汇编语言常用伪指令 (3)第2章汇编语言程序调试过程 (6)2.1 汇编语言程序的命令行开发调试过程 (6)2.1.1 编辑源程序 (6)2.1.2 汇编程序 (8)2.1.3 连接程序 (10)2.1.4 调试程序 (11)2.2 汇编语言编程集成开发环境PWB (18)2.2.1 编辑源文件 (19)2.2.2 运行程序 (20)第3章汇编语言程序设计实验 (31)3.1 顺序程序设计 (31)3.2 分支程序设计 (33)3.3 循环程序设计 (36)3.4 综合程序设计 (38)第4章实验报告撰写规范 (52)附录 (55)I ASCII码表 (55)II 指令速查表 (56)III 伪指令表 (60)IV DOS功能调用 (61)V 常用BIOS功能调用 (66)VI 错误码表 (68)第1章汇编语言程序设计基础1.1汇编语言程序的语句1.1.1 语句格式汇编与言语句一般是由分隔符分成的四个部分组成,格式如下:[名字] 助记符[操作数] [;注释]其中带方括号的项可以省略。

名字项是合法的标识符,包括标号、变量名、过程名、段名或符号名等。

其中,标号后要跟冒号(:),用于指令之前,表示指令的起始地址。

标识符由字母、数字以及_、$、?和@组成,并满足如下要求:(1)不能以数字开头;(2)不能单独使用或,它们有专门用途;(3)不能是系统的保留字,如指令名、寄存器名和伪指令名等。

(4)一个名字的最大有效长度为31,超过31的部分计算机不再识别。

为了便于记忆,名字的定义最好能够见名知义,如用BUFFER表示缓冲区,SUB表示累加和等。

助记符项可以是指令或伪指令。

操作数项包含0个、一个或多个操作数,依赖于具体的指令或伪指令。

计算机硬件实验指导书

计算机硬件实验指导书

第一部分 EL实验系统的结构EL-l微机实验教学系统由功能实验板、可选的CPU板、二块小面包板三部分构成,可安装在45*30*10cm的实验箱内。

总框图如下:面包板:1)通用面包板2)金属圆孔组成的通用实验板CPU板:1)8086 PC总线板2)8086 CPU板3)8051 CPU板4)8098 CPU板5)80C198 CPU板功能实验板:由若干相对独立的功能接口电路组成,它们是:D/A电路、A/D 电路、发光二极管电路、开关量输入电路、RAM/ROM电路、简单I/O电路、 8253可编程定时器/计数器电路、8255并行接口电路、总线驱动电路、8279接口电路、单脉冲发生器、LED显示电路、键盘电路、复位电路、8250串行接口电路。

(一)功能实验板结构1、输出显示电路1)数码显示电路。

该电路由6位共阴极数码管,3片75452,2片74SL07组成, 74LS07为段驱动器,相应输入插孔为CZ4。

75452为位驱动器,相应输入插控为CZ3(LD1,LD2,LD3,LD4,LD5,LD6)。

2)LED灯显示电路。

该电路由2片74LS04,12只发光二极管(红、绿、黄各4只)组成。

12只二极管相应的输人插孔为CZ2(LI1,LI2,LI3,LI4,LI5,LI6,LI7,LI8,LI9,LI10,LIl1,LIl2)2、信号发生电路1)开关量输入电路:该电路由8只开关组成,每只开关有两个位置,一个位置代表高电平,一个位置代表低电平。

该电路的输出插孔为CZl(Kl,K2,K3,K4,K5,K6,K7,K8)。

2)时钟输入电路:该电路由1片74LSl6l组成:·当CPU为PC总线时,输入时钟为AT总线的CLK,·当CPU为805l、8098、80C198时,CLK的输入时钟为晶振频率,·当CPU为8086时,CLK是2MHz。

输出时钟为该CLK的2分频(CLK0),4分频(CLKI),8分频(CLK2),16分频(CLK3),相应输出插孔CZ47(CLK0,CLKl,CLK2,CLK3)。

实验二计算机硬件(含参考答案)

实验二计算机硬件(含参考答案)

实验二:计算机硬件一、认识计算机系统1.你的计算机的硬盘容量是多少?(单位:GB)2.内存的容量是多少?(单位:GB)3.显示器的分辨率是多少?分别说出水平和竖直方向各有多少像素,以及纵横比。

参考答案以Windows 7操作系统为例:1.双击“计算机”,在资源管理器中查看各个盘的容量。

2.桌面选中“计算机”,右键单击,选择“属性”,在“系统”中查看CPU和内存的指标。

3.右键单击桌面,选择“屏幕分辨率”,查看显示器的分辨率。

二、大数据像Google、Facebook、腾讯、百度这样的公司,需要建设多个数据中心来保存信息。

假设一个数据中心拥有10PB的数据,请问:1.如果每个硬盘的容量是1TB,那么需要多少块硬盘?2.如果网速是100Gbps,那么传送完数据中心的数据需要多长时间?备注:一般用大写的B表示Byte,即字节;用小写的b表示bit,一个二进制位。

秒参考答案1.1TB = 1012bytes,而数据中心的数据是10PB=10*1015bytes,所以需要10*1015/1012=10,000块硬盘。

2.数据中心的数据是10PB=1016*8bits,网速是100Gbps=100*109bits/s,所以需要的传输时间是1016*8/1011=8*105秒。

如果转换成以‘天’为单位,8*105/(60*60*24) = 10天。

三、二进制1. 手写计算下面数字的二进制和十六进制表示。

15, 16, 17, 31, 32, 33, 63, 64, 65, 127, 128, 129, 255, 256, 257参考答案1.将十进制转换成二进制的方法是:处以2,取余数,最后倒排这些余数。

以129为例,计算过程如下所示:所以,129(10) = 10000001(2)。

可以反过来验证一下:10000001=1*27+0*26+0*25+0*24+0*23+0*22+0*21+1*20=128+1=129。

河北工业大学计算机硬件实验答案

河北工业大学计算机硬件实验答案

河北⼯业⼤学计算机硬件实验答案第3章指令系统和汇编语⾔程序设计实验3.2 指令系统实验实验⼀熟悉键盘操作及数传指令编程设计⼀、实验⽬的1.熟悉软件模拟调试的环境及键盘操作。

2.掌握汇编语⾔程序设计的⽅法,加深对指令的理解。

3.学会软件模拟调试和察看修改观察项的⽅法。

⼆、实验内容印证数据传送指令的功能、寻址⽅式以及PC指针、SP指针、DPTR指针、Ri指针分别对代码段、堆栈段、外扩数据存储器段、位寻址区等不同存储器的访问⽅式。

三、实验步骤1.进⼊调试软件环境,输⼊源程序;2.汇编源程序;3.⽤单步⽅式运⾏程序;4.检查并记录各寄存器和存储单元内容的变化。

四、程序清单1.内部RAM数据传送1)寄存器寻址与⽴即寻址,需要查看的数据有A、PSW和不同寄存器区的Rn等单元的内容。

ORG 0000HMOV PSW,#00H;MOV R0,#30H;(R0)=30HMOV A,R0;(A)=30HMOV R6,A;(R6)=30HMOV PSW,#14HMOV R0,#30H;(R0)=30HMOV A,R0;MOV R6,A; (R6)=30HMOV A,R0;(A)=30HMOV R6,A;(R6)=30HMOV PSW,#08H;MOV R0,#30H;(R0)=30HMOV A,R0MOV R6,A;(R6)=30HSJMP $END2) 直接寻址,需查看30H、31H、32H、40H、ACC、PSW等单元的内容。

ORG 0100HMOV 30H,#45H;(30H)=45HMOV 31H,#46H; (31H)=46HMOV 02H,31H;(R2)=46HMOV 0E0H,30H;(A)=45HMOV 32H,ACC; (32H)=45HMOV ACC,PSW;(A)=01HMOV 40H,ACC;(40H)=01HSJMP $END3)寄存器间接寻址,需查看@R0、RO等的内容。

ORG 0200HMOV 30H,#66H; (30H)=66HMOV R0,#30H; (R0)=30HMOV @R0,#30H; (30H)=30HSJMP $END需要查看的数据有外部数据存储器单元2000H,外部程序存储器单元2001H。

《计算机硬件技术基础》实验答案程序

《计算机硬件技术基础》实验答案程序

实验一:简单程序设计实验(1)编写一个32 位无符号数除法的程序,要求将存放在NUM1 中的32 位无符号数与存放在NUM2 中的16 位无符号数相除,结果存放在NUM3 和NUM4 中。

程序流程图略。

参考源程序:DATA SEGMENTNUM1 DD 2A8B7654HNUM2 DW 5ABCH NUM3DW ?NUM4 DW ?DATA ENDSCODE SEGMENTASSUME DS:DATA, CS:CODESTART: MOV AX,DATA ;数据段寄存器初始化MOV DS,AXMOV AX, WORD PTR NUM1MOV DX, WORD PTR NUM1+2DIV NUM2MOV NUM3,AXMOV NUM4,DXMOV AH,4CH ;正常返回DOS系统INT 21HCODE ENDSEND START(2)编写一个拆字程序。

要求将存放在ARY 单元的 2 位十六进制数X1X2 拆为X1 和X2 两部分,并以0X1 和0X2 的形式分别存入ARY+1 和ARY+2 单元中。

程序流程图略。

参考源程序:DATA SEGMENT ARYDB 2AH,?,?DATA ENDSCODE SEGMENTASSUME DS:DATA, CS:CODESTART: MOV AX,DATAMOV DS,AXMOV SI,OFFSET ARY ;取ARY的偏移地址MOV AL,[SI] ;取16进制数至ALMOV BL,ALAND AL,0F0H ;取16进制数的高四位,即X1SHR AL,4MOV [SI+1],AL ;存0X1MOV AL,BLAND AL,0FH ;取16进制数的低四位,即X2MOV [SI+2],AL ;存0X2MOV AH,4CHINT 21HCODE ENDSEND START实验二:分支程序设计实验(1)编写一个字符比较程序,比较 3 个无符号字节数A,B,C 的大小,并根据比较结果对变量K 赋值:如果3 个数不相等,则K=0;如果3 个数中有两个相等,则K=1;如果3 个数都相等,则K=2。

计算机硬件基础实验报告

计算机硬件基础实验报告

计算机硬件基础实验报告计算机硬件基础实验报告指导教师:姓名:班级:学号:目录实验一:运算器实验-----------第3页实验二:存储器读写实验---------第6页实验三:数据通路实验----------第8页实验四:微程序控制器试验-------第10页实验五:TEG-G1模型计算机(微程序控制器)测试-------------------第12页实验六:TEG-G1模型计算机(硬连线控制器)测试-------------------第14页实验七:程序调试BEDUG实验------第16页实验八:内存操作数及寻址方法实验---第18页附录部分:--------------第20页《实验七调试程序DEBUG》实验手册《实验八内存操作数及寻址方法》实验手册实验一:运算器实验一、实验目的:1.熟悉寄存器的读写操作。

2.熟悉运算器的数据通路。

3.验证运算器的加、减、与、或功能。

4.按给定的数据,完成几种指定的算术、逻辑运算功能。

二、实验原理:实验电路图详见实验指导书P12-P13页。

EC-G1中运算器操作功能三、实验设备:1.TEC-G1计算机组成实验系统1台2.双踪示波器1台3.直流万用表1只四、实验内容:1.用逻辑笔测试时序信号T1、T2、T3。

2.对下述7组数据进行加、减、与、或运算。

(1)A=0F0H,B=10H(2)A=10H,B=0F0H(3)A=03H,B=05H(4)A=0AH,B=0AH(5)A=0FFH,B=0AAH(6)A=55H,B=0AAH(7)A=0C5H,B=61H3.在实验过程中,记录每一步中有关信号的值,并对这些信号的作用予以解释。

五、实验步骤:详见实验指导书P14-P16页。

六、实验结果:1.用逻辑笔测试时序信号T1、T2、T32.7组数据的加、减、与、或运算结果与C、Z 标志位3.试验中记录每一步中有关信号的值,并对这些信号的作用予以解释解释:七、思考题:(加分项目)为什么在A总线上出现数据A、在B总线上出现数据B后,在数据总线DBUS上能够直接观测运算的数据结果,而标志结果却在下一步才能观测到?答:实验二:存储器读写实验一、实验目的:1.了解静态随机读写存储器MH6116的基本工作特性及使用方法。

第二节硬件实验指导书.docx

第二节硬件实验指导书.docx

第二节硬件实验实验一P3. 3口输入、P1 口输出一、实验目的:掌握P3口P1 口简单使用。

二、实验内容:P3.3口输入一脉冲,P1 口按16进制加一方式点亮发光二极管。

三、实验程序框图:如图5 —11图5・11 P 口输入输出程序框图四、实验接线图:如图5 — 128031图5 — 12 P 口输入输出程序框图五、实验步骤:1.P3. 3 (即X10)用插针连至KI. P1. 0〜P1. 7用插针连至L8〜LI (P1.0〜P1. 7, 对应信号插孔为XO, X2, X3, X4, X5, X7, X8, X6)。

2.从起始地址0540H开始连续运行程序(输入0540后按EXEC键)。

3.开关K1每拨动一次,I」〜L8发光二极管接16进制方式加一点亮。

I」〜L8发光二极管按16进制方式加一闪亮。

实验二工业顺序控制一、实验目的:掌握工业顺序控制程序的简单编程,中断的使用。

二、实验预备知识:在工业控制屮,象冲压.注塑.轻纺.制瓶等生产过程,都是些断续牛产过程,按某种顺序有规律地完成预定的动作.対这类断续牛产过程的控制顺序控制,例注塑机工艺过程大致按“合模一注射一延时一开模一产伸一产退”顺序动作, 用单片机最易实现。

三、实验内容:8032的P1.0〜P1. 6控制注塑机的七道工序,现模拟控制七只发光二极管点亮,低电平有效,设定每道工序时间转换为延时,P3.4为开工启动开关,高电平启动。

P3. 3为外部故障输入模拟开关P3. 3为不断告警。

P1.7为报警声音输出,设定6道工序只有一位输出,第七道工序三位有输出。

四、实验程序框图:如图5—13 (a)、(b)关输出中断.P1.P3Q初化保护现场等开工工序1延时故障消除了吗?-N工序2延时恢复现场工序7延时返回图5-13(a)工业顺序控制主程序框图图5-13(b)中断服务子程序框图五、实验接线图:如图5 — 148831图5-14工业顺序控制实验接线图六、实验步骤:1.P3. 4(X18)连KI, P3. 3(X10)连K2, P1.0〜P1. 6(X0, X2, X3, X4, X5, X7, X8)分别连到L1〜L7, P1.7(X6)连VIN (电子音响输入端,即SIN)。

计算机硬件技术基础电子教案习题答案第7章

计算机硬件技术基础电子教案习题答案第7章

上的输入信号,在中断请求未被屏蔽且现行指令周期无总线请求的条件下,
及时响应接子程序,完 成数据输入/输出操作后再返回到主程序断点处继续执行。
输 出 指 令
中 断 请 求
中 断 请 求
流程图:
CPU 执行主程序 输入/输出指令 启动命令 CPU 执行主程序 中断请求 CPU I/O设备 准备就绪
④ DMA控制器控制数据传输。 ⑤ 传输结束,DMA控制器将总线管理权交还给CPU。
7.3.1并行接口 1. 概念:采用并行传输方式来传输数据的接口标准。
种类:
① 简单并行数据寄存器构成的接口 ② 专用的集成接口芯片8255A
③ 复杂的SCSI或IDE并行接口
2. 特性:以并行方式传输,数据通道的宽度为并行接口的传输位数。微机中 数据通道的宽度常用8位。
模式控制字
C口置位/复位控制字
2.8255A的初始化编程 将相应的命令字通过输出指令送入到控制寄存器中。
【例】设8255A的A口、B口、C口及控制端口地址分别为03E0H、03E2H,
03E4H、03E6H。A口工作在模式1,B口工作在模式0,端口A作为输入端 口,端口B作为输出端口,端口C的高4位作为输入端口,低4位作为输出端
(2)模式2的输入和输出
三、8255A的编程 8255A在使用之前,必须先进行初始化编程操作,即通过相应的指令将控制
字送入其控制端口,以选择其工作模式和功能。
1.8255A的控制字 8255A的控制字有模式控制字和C口置位/复位控制字。 ① 模式控制字:设定A口、B口、C口的工作方式和输入/输出功能。 ② 置位/复位控制字:按位对C口进行置位/复位。
3.中断接口 根据中断方式和中断处理要求,中断接口电路应该具有接收中断请求、进 行中断判优、设置中断屏蔽等功能。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《计算机硬件基础》课程实验指导书辽宁工程技术大学软件学院2017年5月目录64位操作系统下使用MASM (3)实验上机操作范例 (5)实验一CPU结构 (15)实验二指令格式 (22)//实验三循环程序设计 (25)实验四综合程序设计(一) (32)实验五综合程序设计(二) (36)实验六高级汇编技术 (42)64位操作系统下使用MASM1.安装DOSBox。

双击DOSBox0.74-win32-installer.exe。

2.运行DOSBox。

双击桌面的DOSBox快捷方式,如图1所示。

图1 运行DOSBOX虚拟机3.将MASM文件夹里的全部文件拷贝到一个目录下,比如d:\masm下,然后将这个目录挂载为DOSBox的一个盘符下,挂载命令为Mount c d:\masm 。

然后切换到挂载的c盘,如图2所示。

图2 挂载masm文件夹3.编译汇编源程序,如图3所示。

图3 汇编源程序4.连接和运行源程序,如图4所示。

图4连接和运行源程序实验上机操作范例【范例】完成具有如下功能的分段函数1 X>0Y = 0 X=0-1 X<0其中:X存放在内存单元中,Y为结果单元。

【问题分析】根据题意画出程序流程图,如图1所示。

图1 分段函数的程序流程图根据程序流程图编写如下程序DSEG SEGMENTX DW ?Y DW ?DSEG ENDSCSEG SEGMENTASSUME CS: CSEG, DS: DSEGSTART:MOV AX, DSEGMOV DS, AXLEA SI, XMOV AX, [SI]AND AX, AXJNS LP1MOV Y, 0FFH ; X<0JMP END1LP1: JNZ LP2MOV Y, 00HJMP END1LP2: MOV Y, 01HEND1: MOV AH, 4CHINT 21HCSEG ENDSEND START汇编语言程序的开发分为以下4个部分:编辑(生成.asm文件)—→汇编(生成.obj文件)—→连接(生成.exe文件)—→调试。

下面介绍汇编语言源程序从编辑到生成一个可执行文件(.exe文件)的过程。

利用Microsoft公司提供的MASM6.15版本的工具包(包括MASM.EXE、LINK.EXE、ML.EXE、DEBUG32.EXE等),如图2所示。

图2 G盘下的MASM615工具包下面的例子按以下几个步骤完成:(1)先编写一个fenduan.asm文件;(2)保存并通过运行masm.exe生成目标文件fenduan.obj;(3)再利用link.exe生成可执行文件fenduan.exe;(4)运行fenduan.exe文件;(5)运行debug32 fenduan.exe后即可对程序进行跟踪调试。

1.通过DOSbox调用MASM6.15图3 挂载masm6.15将masm汇编工具文件夹g:\masm615\挂载到DOSbox虚拟机的C盘下。

命令为mount c g:\masm615,然后,进入虚拟盘符C盘下,即g:\masm615下。

2.编辑源程序在masm615文件下建立记事本,把文件扩展名改为.asm并进行保存,这时弹出图4所示窗口,单击“是”。

图4 重命名对话框双击fenduan.asm文件,编写汇编语言源程序,如图5所示。

图5 记事本中编写汇编语言源程序2、汇编汇编的命令格式是:masm 文件名.asm (扩展名.asm可以省略)图6 汇编fenduan.asm文件汇编fenduan.asm文件,在DOS环境下键入―masm fenduan.asm‖,按回车。

如图6所示生成fenduan.obj文件,显示的信息含义为:Object filename [FENDUAN.OBJ]: ←是否改动输出OBJ文件名,如不改就按回车键―ENTER‖。

Source listing [NUL.LST]: ← 是否需要列表文件(LST),不需要就按回车键。

Cross-reference [NUL.CRF]: ←是否需要对照文件(CRF),不需要则按回车键。

51670 + 464874 Bytes symbol space free0 Warning Errors ←警告错误,表示编译器对某些语句不理解,通常是输入错误。

0 Severe Errors ←严重错误,会造成程序无法执行,通常是语法结构错误。

如果没有一个错误存在,即可生成OBJ文件。

OBJ中包含的是编译后的二进制结果,它还无法被DOS载入内存中加以执行,必须加以连接(Linking)。

以LINK将OBJ文件(FENDUAN.OBJ)链结成EXE 文件(FENDUAN.EXE)。

3、连接连接的命令格式:link 文件名.obj (扩展名.obj可以省略)图7 连接fenduan.obj文件连接fenduan.obj文件,在DOS环境下键入―link fenduan.obj‖,按回车。

如图7所示生成了fenduan.exe文件,显示的信息含义为:Microsoft (R) Overlay Linker Version 3.60Copyright (C) Microsoft Corp 1983-1987. All rights reserved.Run File [SMILE.EXE]: ← 是否改动输出EXE文件名,如不改就ENTER。

List File [NUL.MAP]: ← 是否需要列表文件(MAP),不需要则ENTER。

Libraries [.LIB]: ←是否需要库文件,要就键入文件名,不需要则ENTER。

LINK : warning L4021: no stack segment← 由于COM文件不使用堆栈段,所以错误信息。

"no stack segment"并不影响程序正常执行。

4、调试调试的命令格式是:DEBUG32 文件名.exe ←.exe可以省略。

若调试fenduan.exe文件,如图14所示在DOS环境下键入―debug fenduan.exe‖,按回车,这时进入debug动态调试窗口。

先用命令U反汇编整个程序,查看每条指令的物理地址,其显示内容如图8和9所示。

图8 调试fenduan.exe图9 用u命令反汇编fenduan程序在这里,出现的反汇编指令如下所示:内存地址指令代码反汇编的程序代码1CA6:0000 B8A51C MOV AX, 1CA5 ;数据段的首地址DS =1CA51CA6:0003 8ED8 MOV DS, AX1CA6:0005 8D360000 LEA SI, [0000] ;变量X的偏移地址00001CA6:0009 8B04 MOV AX, [SI]1CA6:000B 23C0 AND AX, AX1CA6:000D 7909 JNS 00181CA6:000F C7060200FF00 MOV WORD PTR [0002],00FF ;变量Y的偏移地址0002 1CA6:0015 EB12 JMP 0029 ;跳转到该程序段偏移地址为0029处执行1CA6:0017 90 NOP1CA6:0018 7509 JNZ 00231CA6:001A C70602000000 MOV WORD PTR [0002],00001CA6:0020 EB07 JMP 00291CA6:0022 90 NOP1CA6:0023 C70602000100 MOV WORD PTR [0002],00011CA6:0029 B44C MOV AH,4C1CA6:002B CD21 INT 21假设我们给变量X赋值为F723H,如图10所示。

图10 为变量X赋值从反汇编地址中找到执行的起始地址为0000到002B。

然后执行,如图11所示。

图11 设置断点如图12所示查看Y变量中的值,通过反汇编命令我们知道Y变量的偏移地址为0002H。

图12 查看Y变量此时,我们观察到X变量为F723H时,X小于0,则Y应为-1(即FFH),说明调试成功。

实验一CPU结构一、实验目的1.了解CPU内部结构,掌握查看有关寄存器的方法。

2.掌握数据在内存中的存放方式和内存操作数的寻址方式。

3.熟练掌握DEBUG的常用命令,学会用DEBUG调试程序。

4.掌握汇编语言源程序的组成格式。

5.掌握汇编语言源程序的编辑、调试及运行方法。

二、实验准备知识1.DEBUG程序的启动DEBUG是专门为汇编语言设计的一种汇编语言调试工具,它通过单步执行,设置断点连续执行等方式为汇编语言程序员提供了非常有效的调试手段。

在DOS提示符下,可输入命令:C>DEBUG [d:][path][文件名][ 参数1][参数2]其中文件名是被调试文件的名称,它必须是执行文件(.EXE),两个参数是运行被调试文件时所需要的命令参数,在DEBUG程序调入后,出现提示符―–‖,此时,可键入所需的DEBUG命令。

在启动DEBUG时,如果输入了文件名,则DEBUG程序把指定文件装入内存。

用户可以通过DEBUG的命令对指定文件进行修改,显示和执行。

如果没有文件名,则是以当前内存的内容进行工作。

2.DEBUG的主要命令1)汇编命令A格式:– A [起始地址]功能:该命令从指定地址开始允许输入汇编语句,把它们汇编成机器代码相继存放在从指定地址开始的存储器中。

2)反汇编命令U(1)格式1:– U [起始地址]功能:该命令从指定地址开始,反汇编32个字节,若地址省略,则从上一个U 命令的最后一条指令的下一个单元开始显示32个字节。

(2)格式2:– U [起始地址终止地址]格式3:– U [起始地址L 字节数]功能:该命令对指定范围的内存单元进行反汇编。

例如:3)运行命令G格式:– G [= 起始地址1][断定点地址2[断点地址3……]]功能:从指定地址开始执行程序。

在设定的断点处程序暂停,并显示全部寄存器内容和下一条要执行的指令。

一般设置断点前最好用U命令查看一下指令开始的地址。

断点数最多为10个。

如:– G=100 1084)跟踪命令(单步执行)T格式1:– T [=起始地址]格式2:– T [=起始地址指令条数]功能:从指定地址开始执行程序,每次执行一条指令,然后显示各寄存器的内容和状态寄存器的内容,及以助记符形式表示的下一条指令。

如:– T=1005)显示内存单元内容的命令D格式1:– D [起始地址]格式2:– D [起始地址终止地址]格式3:– D [起始地址L 字节数]功能:显示指定内存单元的内容。

6)修改内存单元内容的命令E(1)用给定的内容代替指定范围的单元内容格式:– E 地址内容表例如:– E 2000:0100 F3 "XYZ" 8D其中F3、"X"、"Y"、"Z"和8D各占一个字节,用这五个字节代替原内存单元2000:0100到0104的内容,"X"、"Y"、"Z"将分别存入其ASCII码值。

相关文档
最新文档