微机原理实验一报告

合集下载

微机原理实验报告册(3篇)

微机原理实验报告册(3篇)

第1篇一、实验目的1. 理解和掌握微机的基本组成和工作原理;2. 熟悉微机硬件设备和实验仪器的使用方法;3. 提高动手实践能力,培养解决实际问题的能力;4. 深入理解微机原理课程内容,为后续课程学习奠定基础。

二、实验内容1. 微机系统认识实验2. 微机硬件组成实验3. 微机指令系统实验4. 微机寻址方式实验5. 微机程序设计实验6. 微机接口技术实验三、实验仪器与设备1. 微机原理实验箱2. 示波器3. 数字万用表4. 计算机一台5. 实验指导书四、实验步骤与内容1. 微机系统认识实验(1)观察实验箱的结构,了解各个模块的功能;(2)熟悉实验箱的电源、复位、运行等按钮的使用方法;(3)学习微机系统的工作流程,包括加电、复位、启动等过程;(4)观察微机系统启动后的运行状态,了解各个模块的协同工作。

2. 微机硬件组成实验(1)观察实验箱的CPU、内存、I/O接口等硬件模块;(2)学习CPU的内部结构,包括寄存器、控制单元、运算单元等;(3)学习内存的存储原理,了解ROM、RAM等存储器的特点;(4)学习I/O接口的工作原理,了解中断、DMA等传输方式。

3. 微机指令系统实验(1)学习微机指令系统的基本格式,包括操作码、地址码等;(2)掌握微机指令系统的寻址方式,包括立即寻址、直接寻址、间接寻址等;(3)编写简单的汇编语言程序,实现加、减、乘、除等运算;(4)学习微机中断处理过程,了解中断向量表、中断服务程序等概念。

4. 微机寻址方式实验(1)学习微机寻址方式的基本概念,包括直接寻址、间接寻址、寄存器寻址等;(2)编写程序,实现不同寻址方式下的数据访问;(3)观察不同寻址方式对程序执行速度的影响。

5. 微机程序设计实验(1)学习汇编语言程序设计的基本方法,包括数据定义、指令编写、程序结构等;(2)编写简单的程序,实现数据交换、排序等操作;(3)学习微机程序的调试方法,包括单步执行、断点设置等。

6. 微机接口技术实验(1)学习微机接口技术的基本概念,包括并行接口、串行接口等;(2)观察实验箱中的并行接口、串行接口等模块,了解其工作原理;(3)编写程序,实现数据在并行接口、串行接口之间的传输;(4)学习微机中断处理在接口技术中的应用。

微机原理与应用第一次实验报告

微机原理与应用第一次实验报告

微机原理与应用实验一、实验二实验报告电92 雷云泽2009010941 实验一简单计算机系统基本模块设计1一、实验目的1.掌握简单计算机系统的指令系统2.掌握简单计算机基本模块的设计方法3.巩固EDA电路仿真和调试的方法二、实验任务包括练习指令编码设计寄存器组模块、设计RAM模块、设计I/O端口及其映射模块、设计和检测ROM模块1.练习指令编码阅读项目任务书的简单计算机指令系统,理解其中的7条R型指令AND、OR、ADD、SUB、ADDC、SUBC、SLT,和2条I型指令的LW、SW。

写出表1-1指令的编码和功能说明。

表1-1 指令编码练习2.设计寄存器组模块(1)任务要求在R类型指令中有3个操作数,其中2个操作数来自寄存器组,作为算术逻辑模块ALU的输入,另1个操作数是ALU 的输出,需写回寄存器组中。

所以,寄存器组模块需要1个写通道、2个读通道。

在寄存器组读操作时,需给出要读寄存器的寄存器号,寄存器组将该寄存器号对应的内容从输出端口输出;在寄存器组写操作中,需给出要写入寄存器的寄存器号和要写入的数据,寄存器组模块将在控制信号的作用下把数据写到指定的寄存器中。

寄存器组模块的封装图见1-1,包含2个异步读通道、1个同步写通道,内部包含4个8位寄存器(分别称为R0、R1、R2、R3,对应的二进制编号分别为00、01、10、11),1个2-4译码器和2个8位4选1多路选择器,其中每个寄存器都是带时钟使能和异步复位端口的8位D 触发器。

可利用QuartusII的MegaWizard下LMP_FF、LMP_DECODE、LPM_MUX进行设计。

寄存器组模块信号说明:输入信号:N1[1..0]:读通道1的寄存器号N2[1..0]:读通道2的寄存器号ND[1..0]:写通道的寄存器号DI[7..0]:写通道的输入数据CLK:时钟脉冲信号,上升沿有效REG_WE:写允许,为1时,在CLK上升沿,将数据DI写入ND指定的寄存器;为“0”时,禁止对寄存器阵列进行写操作。

微机原理实验一报告

微机原理实验一报告

寻址方式与基本指令实验实验目的1、熟悉80x86寻址方式及基本指令的功能,进一步理解和巩固课堂学习内容。

2、掌握汇编语言程序设计上机过程, 掌握汇编语言源程序结构,为后续汇编语言程序设计打好基础。

3、熟悉Microsoft的DEBUG或Borland的Turbo DEBUG调试工具的使用方法2.1.2 实验预习要求1、认真阅读本书第一部分第1章,熟悉汇编语言程序设计上机步骤。

2、认真阅读本书第三部分,熟悉DEBUG调试工具的使用方法。

3、复习80x86操作数寻址方式及基本指令(数据传送、算术运算和逻辑运算等)。

4、了解实验内容,并在实验前根据课堂所学知识回答有关问题(个别取决于程序实际运行环境的问题除外),以便在实验时进行验证。

2.1.3 实验内容1、读懂下面的源程序,使用EDIT生成名为的源程序,汇编生成文件和文件,连接生成EX11.EXE文件,用EXIT打开文件,了解.LST文件包含的信息,使用DEBUG调试工具单步执行程序,注意观察IP值的变化,并回答下列问题。

○1程序装入后,代码段寄存器CS的内容为1138H,代码段第一条可执行指令“MOV AX DATA”对应的机器代码为0000B83711H,它是一个——字节指令,注意观察执行该指令是IP值的变化情况,该指令源操作数DATA的寻址方式是立即数寻址方式,其值是1137。

○2执行完“MOVDSDATA”指令后,数据段寄存器DS的内容为1127H,源程序在数据段中定义的数据82H、68H和88H被装入的存储单元的物理地址分别为11270H、11271H和11272H。

○3程序中第一条“ADDAL[BX]”指令对应的机器代码为0008 8A07H,它是一个四字节指令,注意观察执行该指令时IP值的变化情况;该指令中源操作数的寻址方式为寄存器间接寻址方式,该操作数所在的存储单元的逻辑地址(DS):(BX)为1137:0000,其物理地址为11370H,执行完该指令后(AL)=37H,CF=0H,OF=0H,ZF=0H,SF=0H,AF=0H,PF=0H;计算结果正确,结果是负数○4执行完第二条“ADD AL [BX]”指令后(AL)=82H,CF=0H,OF=0H,ZF=0H,SF=1H,AF=0H,PF=0H;计算结果正确,结果是负数○5指令“MOV SUM,AL”中,目的操作数的寻址方式为寄存器直接寻址方式。

微机原理实验一报告

微机原理实验一报告

微机原理实验一1.DEBUG 的基本操作:(1)从WINDOWS 进入DOS 之后,输入命令启动DEBUG:C:>DEBUG 回车(2)输入R 命令,查看和记录CPU 各个寄存器的内容:-R 回车看到什么?AX=0000 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000DS=16D3 ES=16D3 SS=16D3 CS=16D3 IP=0100 NV UP EI PL NZ NA PO NC 16D3:0100 0000 ADD [BX+SI],AL DS:0000=CD(3)输入 A 命令,汇编下面的字符“WINDOWS”显示程序(DEBUG 调试环境中,默认为十六进制,因此源程序中十六进制数后面不写H):-A 100 ;从偏移地址是0100H 处开始写指令MOV AH,2MOV DL, 57 ;57H 是“W”的ASCII 码INT 21 ;INT 21 是DOS 功能调用,AH=2 代表2 号功;能。

这3 句合起来的功能是:显示DL 中的字符MOV DL, 49INT 21MOV DL, 4EINT 21MOV DL, 44INT 21MOV DL, 4FINT 21MOV DL, 57INT 21MOV DL, 53INT 21INT 3 ;功能是产生一个断点,不要省略(4)输入U 命令反汇编上面的程序:-U 100问:这里100代表什么?反汇编从0100开始(5)输入G命令连续运行上面的程序,记录运行结果:-G=100AX=0000 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000DS=16D3 ES=16D3 SS=16D3 CS=16D3 IP=0100 NV UP EI PL NZ NA PO NC 16D3:0100 B402 MOV AH,02(6)输入E命令把上面程序中的数据57,49,4E,44,4F,57,53依次分别改为57,45,4C,43,4F,4D,45:-E 103 回车(以下同)-E 107-E 10B-E 10F-E 113-E 117-E 11B(7)输入D命令查看程序机器码的存放情况:-D 100 11E ;看从100开始到11E的机器码(8)输入G命令再连续运行程序,并记录运行结果:-G=100WELCOMEAX=0245 BX=0000 CX=0000 DX=0045 SP=FFEE BP=0000 SI=0000 DI=0000DS=16D3 ES=16D3 SS=16D3 CS=16D3 IP=011E NV UP EI PL NZ NA PO NC 16D3:011E CC INT 3(9)依次输入下面的T命令(单步执行)和G命令(设置断点并启动运行),记录各命令的运行结果:-T=100 回车-G=100 106 回车-G=100 10A 回车-G=100 10E 回车-G=100 11E 回车T=100AX=0245 BX=0000 CX=0000 DX=0045 SP=FFEE BP=0000 SI=0000 DI=0000DS=16D3 ES=16D3 SS=16D3 CS=16D3 IP=0102 NV UP EI PL NZ NA PO NC 16D3:0102 B257 MOV DL,57-g=100 106W-g=100 10aWE-g=100 10eWEL-g=100 11eWELCOME2.一字节十六进制数转换为ASCII码(只考虑大写字母)用E命令在DS:1000单元中存放十六进制数5A,用A命令从CS:0100单元开始存放下面程序的机器码,并调试运行(DEBUG调试环境中,源程序中十六进制数后面不写H):CS:0100 8D360010 LEA SI,[1000] ;将EA=1000送入SI中0104 8D3E2010 LEA DI,[1020] ;将EA=1020送入DI中0108 8A04 MOV AL,[SI] ;(AL)←((SI))010A 240F MOV BL,AL ;将AL中的一个字送入BL010C 240F AND AL,0F ;(AL)←(AL)^(01H)010E E80E00 CALL 011F ;调用EA=011F中的指令0111 80E30 AND BL,F0 ;(BL)←(BL)^(F0H)0114 B90400 MOV CX,4 ;将立即数4送入CX中0117 D2EB SHR BL,CL ;将BL中的内容左移CL;中指出的位数,且每次移位最低位补0 0119 88D8 MOV AL,BL ;将BL中的一个字送入AL011B E80100 CALL 011F ;调用EA=011F中的指令011E F4 RET :返回指令011F 3C09 CMP AL,09 ;(AL)-09,根据结果设置标志位0121 7602 JBE 0125 ;执行EA=0125的指令0123 0407 ADD AL,07 ;(AL)←(AL)+07H0125 0430 ADD AL,30 ;(AL)←(AL)+30H0127 8805 MOV [DI],AL ;(AL)送入EA=(DI)的单元中0129 47 INC DI ;(DI)←(DI)+1012A C3 RET ;返回指令运行结果:1)写出执行上述程序的命令行-G=1002)程序执行后,[1020]=_____41_____,[1021]=___35______。

微机原理的实验报告

微机原理的实验报告

一、实验目的1. 理解微机的基本组成和各部件的功能;2. 掌握微机的工作原理和指令系统;3. 熟悉汇编语言程序设计的基本方法;4. 提高动手能力和实际操作技能。

二、实验内容1. 微机系统组成实验(1)实验目的:了解微机的基本组成和各部件的功能。

(2)实验内容:观察并记录微机系统的各个部件,如CPU、内存、硬盘、主板等,并了解它们的功能。

(3)实验步骤:①观察微机系统各个部件的连接情况;②了解各个部件的功能和作用;③分析微机系统的整体结构。

2. 微机工作原理实验(1)实验目的:掌握微机的工作原理。

(2)实验内容:观察并记录微机工作过程中的各个阶段,如指令的取指、译码、执行等。

(3)实验步骤:①观察微机工作过程中的各个阶段;②了解各个阶段的功能和作用;③分析微机工作原理。

3. 指令系统实验(1)实验目的:熟悉汇编语言指令系统。

(2)实验内容:学习汇编语言的基本指令,如数据传送指令、算术运算指令、逻辑运算指令等。

(3)实验步骤:①学习汇编语言的基本指令;②编写简单的汇编语言程序,实现数据传送、算术运算、逻辑运算等功能;③调试程序,观察程序运行结果。

4. 汇编语言程序设计实验(1)实验目的:提高汇编语言程序设计能力。

(2)实验内容:编写一个汇编语言程序,实现以下功能:①计算两个数的和;②判断一个数是否为偶数;③输出程序运行结果。

(3)实验步骤:①编写汇编语言程序,实现上述功能;②调试程序,观察程序运行结果;③分析程序运行过程,确保程序正确性。

三、实验结果与分析1. 微机系统组成实验:通过观察和记录微机系统的各个部件,了解了微机的基本组成和各部件的功能。

2. 微机工作原理实验:通过观察微机工作过程中的各个阶段,掌握了微机的工作原理。

3. 指令系统实验:通过学习汇编语言的基本指令,熟悉了汇编语言指令系统。

4. 汇编语言程序设计实验:通过编写汇编语言程序,提高了汇编语言程序设计能力。

四、实验心得通过本次微机原理实验,我对微机的基本组成、工作原理和指令系统有了更深入的了解。

微机原理实验报告

微机原理实验报告

校区实验报告课程名称____________________________ 专业班级_____________________________ 学生及学号____________________________指导教师____________________________实验地点————————————————2015 ~2016 学年第二学期《微机原理与接口技术》实验一(1)实验名称存贮器部数据传送姓名系院专业电子信息类班级学号实验日期2016.6.14 指导教师成绩一、实验目的和要求1、初步掌握星研集成环境工具软件的使用方法。

2、掌握存储器部不同位置间数据传送的方法。

3、认真预习本节实验容,尝试自行编写程序,填写实验报告。

二、实验容(包括实验步骤和代码)1、编写源程序,要求将数据段中3000H~30FFH 单元的容传送给6000H~60FFH 单元中。

2、编译、连接所编写的源程序。

3、执行程序前,利用存贮器窗口将DS:3000H~300FH 中的数据改为11、22、33、44、55、66、77、88、99、AA、BB、CC、DD、EE、FF、00,存贮器窗口支持数据的直接修改功能,在相对应的地址中直接输入数据即可。

4、进入调试状态后,分别以“全速运行”、“全速断点”、“单步”、“单步进入”等方式运行程序,同时在工作区窗口的CommonRegister 视图中查看本程序所使用的寄存器(CX、DI、SI)容的变化。

5、在如下图所示的存贮器窗口中检查程序运行结果是否正确。

程序如下:.MODEL TINY ;memory mode : tiny.STACK 100 ;堆栈.CODE ;开始程序段START: MOV AX,DATAMOV DS,AXMOV ES,AXNOPMOV CX,100HMOV SI,3000HMOV DI,6000HCLDREPE MOVSBMOV CX,100HMOV SI,3000HMOV DI,6000HREPE CMPSBJNE ERRORTRUE: JMP $ERROR: JMP $END START三、实验结果及其分析1、通过该实验,成功地将数据段中3000H~30FFH 单元的容传送到了6000H~60FFH 单元中。

微机原理实验报告

微机原理实验报告

微机原理实验报告实验一两个多位十进制数相加的实验一、实验目的学习数据传送和算术运算指令的用法熟悉在PC机上建立、汇编、链接、调试和运行汇编语言程序的过程。

二、实验内容将两个多位十进制数相加, 要求被加数和加数均以ASCII码形式各自顺序存放在以DATA1.DATA2为首的5个内存单元中(低位在前), 结果送回DATA1处。

三、程序框图图3-1四、参考程序清单程序名: XIANGJ.ASMDATA SEGMENTDATA1 DB 33H,39H,31H,37H,34H;被加数DATA1END EQU $-1DATA2 DB 34H,35H,30H,38H,32H;加数DATA2END EQU $-1SUM DB 5 DUP(?) DATA ENDSSTACK SEGMENTSTA DB 20 DUP(?) TOP EQU LENGTH STA STACK ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACK,ES:DATA START: MOV AX,DATAMOV DS,AXMOV AX,STACKMOV SS,AXMOV AX,TOPMOV SP,AXMOV SI,OFFSET DATA1ENDMOV DI,OFFSET DATA2ENDCALL ADDAMOV AX,4C00HINT 21HADDA PROC N EARMOV DX,SIMOV BP,DIMOV BX,05HAD1: SUB BYTE PTR [SI],30HSUB BYTE PTR [DI],30HDEC SIDEC DIDEC BXJNZ AD1MOV SI,DXMOV DI,BPMOV CX,05HCLCAD2: MOV AL,[SI]MOV BL,[DI]ADC AL,BLAAAMOV [SI],ALDEC SIDEC DILOOP A D2MOV SI,DXMOV DI,BPMOV BX,05HAD3: ADD BYTE PTR [SI],30HADD BYTE PTR [DI],30H DEC SIDEC DIDEC BXJNZ AD3RETADDA ENDPCODE ENDSEND START五: 结果分析这次试验依次将相加数和被相加数存入AL, BL, 依次从低位向高位相加, 然后把结果放在内存中, 根据程序走向, 相加的结果依次放在内存地址DS:0000到DS:0004的位置上, 和我们实验预期结果一样。

微机原理与接口技术实验报告

微机原理与接口技术实验报告

微机原理与接口技术实验报告实验一,微机原理实验。

1. 实验目的。

本实验旨在通过对微机原理的实验,加深学生对微机原理相关知识的理解,提高学生的动手能力和实验技能。

2. 实验内容。

本实验主要包括微机原理的基本知识、微处理器的结构和功能、微机系统的总线结构、存储器与I/O接口。

3. 实验步骤。

(1)了解微机原理的基本知识,包括微处理器的分类、功能和工作原理。

(2)学习微机系统的总线结构,掌握总线的分类、功能和工作原理。

(3)了解存储器与I/O接口的基本概念和工作原理。

(4)进行实际操作,通过实验板进行微机原理实验,加深对微机原理知识的理解。

4. 实验结果。

通过本次实验,我深刻理解了微机原理的基本知识,掌握了微处理器的结构和功能,了解了微机系统的总线结构,以及存储器与I/O接口的工作原理。

通过实际操作,我对微机原理有了更深入的认识,提高了自己的动手能力和实验技能。

实验二,接口技术实验。

1. 实验目的。

本实验旨在通过对接口技术的实验,加深学生对接口技术相关知识的理解,提高学生的动手能力和实验技能。

2. 实验内容。

本实验主要包括接口技术的基本知识、接口电路的设计与调试、接口技术在实际应用中的作用。

3. 实验步骤。

(1)了解接口技术的基本知识,包括接口的分类、功能和设计原则。

(2)学习接口电路的设计与调试,掌握接口电路设计的基本方法和调试技巧。

(3)了解接口技术在实际应用中的作用,包括各种接口的应用场景和实际案例。

(4)进行实际操作,通过实验板进行接口技术实验,加深对接口技术知识的理解。

4. 实验结果。

通过本次实验,我深刻理解了接口技术的基本知识,掌握了接口电路的设计与调试方法,了解了接口技术在实际应用中的作用。

通过实际操作,我对接口技术有了更深入的认识,提高了自己的动手能力和实验技能。

总结。

通过微机原理与接口技术的实验,我对微机原理和接口技术有了更深入的理解,提高了自己的动手能力和实验技能。

希望通过今后的学习和实践,能够更加深入地掌握微机原理与接口技术的知识,为将来的工作和研究打下坚实的基础。

微机原理实验报告一

微机原理实验报告一

实验报告一、实验目的1. 熟悉80C51单片微机汇编语言设计及编程技巧。

2. 掌握逻辑运算程序的设计方法。

3. 掌握求最小数和最大数程序的设计方法。

4. 掌握多字节无符号十进制数加、减法程序的设计二、实验器材1. Micetek仿真器一台2. 实验板一块三、实验内容1.逻辑运算:根据下列逻辑运算式,编写程序计算运算结果。

Y=A⊕B•C • D+A设:A=63H,B=82H,C=C5H,D=36H。

求Y=?2. 求最小数和最大数:10个无符号数连续存放在以20H为起始地址的RAM中,找出其中的最小值存入30H单元中,找出其中的最大值存入31H单元中。

3. 十进制加、减运算:286729+652430-752196=?在8051片内RAM的20H~22H中放入3字节被加数(低位在先)、23H~25H放入加数(低位在先)、26H~28H放入减数,结果存入2DH~2FH单元(低位在先)。

四、实验数据记录和分析1.逻辑运算:A.实验程序:ORG 0000HAJMP fxORG 0080Hfx:MOV A,#63HMOV R0,#36HORL A,R0CPL AMOV R1,AMOV A,#82HMOV R0,#0C5HANL A,R0CPL AMOV R0,#63HXRL A,R0CPL AANL A,R1EndB.程序list文件符号值类型AC = 00D6H CONST 常量ACC = 00E0H CONST 常量B = 00F0H CONST 常量CY = 00D7H CONST 常量DPH = 0083H CONST 常量DPL = 0082H CONST 常量EA = 00AFH CONST 常量ES = 00ACH CONST 常量ET0 = 00A9H CONST 常量ET1 = 00ABH CONST 常量EX0 = 00A8H CONST 常量F0 = 00D5H CONST 常量F1 = 00D1H CONST 常量FX = 0080H CODE 标号IE = 00A8H CONST 常量IE0 = 0089H CONST 常量IE1 = 008BH CONST 常量IP = 00B8H CONST 常量IT0 = 0088H CONST 常量IT1 = 008AH CONST 常量OV = 00D2H CONST 常量P = 00D0H CONST 常量P0 = 0080H CONST 常量P1 = 0090H CONST 常量P2 = 00A0H CONST 常量P3 = 00B0H CONST 常量PCON = 0087H CONST 常量PS = 00BCH CONST 常量PSW = 00D0H CONST 常量PT0 = 00B9H CONST 常量PT1 = 00BBH CONST 常量PX0 = 00B8H CONST 常量PX1 = 00BAH CONST 常量RB8 = 009AH CONST 常量REN = 009CH CONST 常量RI = 0098H CONST 常量RS0 = 00D3H CONST 常量RS1 = 00D4H CONST 常量SBUF = 0099H CONST 常量SCON = 0098H CONST 常量SM1 = 009EH CONST 常量SM2 = 009DH CONST 常量SP = 0081H CONST 常量TB8 = 009BH CONST 常量TCON = 0088H CONST 常量TF0 = 008DH CONST 常量TF1 = 008FH CONST 常量TH0 = 008CH CONST 常量TH1 = 008DH CONST 常量TI = 0099H CONST 常量TL0 = 008AH CONST 常量TL1 = 008BH CONST 常量TMOD = 0089H CONST 常量TR0 = 008CH CONST 常量TR1 = 008EH CONST 常量公有符号: 57私有符号: 0C.实验思路:1.将A值给累加器2.将D值给R03.将A和D逻辑或,并把结果存入累加器A4.A和D或以后取非5.将A和D 取非以后的结果存到R1中6.将B值给累加器A7.将C值给R08.B与C逻辑与9.取反10.将A值存到R0中11.最后将逻辑运算前后的两个逻辑与2. 求最小数和最大数:A.实验程序:ORG 0000HAJMP MAINORG 0080HMAIN:MOV R0,#20HMOV A,@R0MOV R7,#09HMOV R2,AMOV R3,ALOOP:INC R0ACALL COMPDJNZ R7,LOOPAJMP DONECOMP:CLR CMOV A,@R0SUBB A,R2JC MINMOV A,@R0MOV R1,AMOV A,R3SUBB A,R1JC MAXRETMIN:MOV A,@R0MOV R2,ARETMAX:MOV A,R1MOV R3,ARETDONE:MOV 30H,R2MOV 31H,R3ENDB.实验生成list文件:符号值类型AC = 00D6H CONST 常量ACC = 00E0H CONST 常量B = 00F0H CONST 常量COMP = 008EH CODE 标号CY = 00D7H CONST 常量DONE = 00A0H CODE 标号DPH = 0083H CONST 常量DPL = 0082H CONST 常量EA = 00AFH CONST 常量ES = 00ACH CONST 常量ET0 = 00A9H CONST 常量ET1 = 00ABH CONST 常量EX0 = 00A8H CONST 常量EX1 = 00AAH CONST 常量F0 = 00D5H CONST 常量F1 = 00D1H CONST 常量IE = 00A8H CONST 常量IE0 = 0089H CONST 常量IE1 = 008BH CONST 常量IP = 00B8H CONST 常量IT0 = 0088H CONST 常量IT1 = 008AH CONST 常量LOOP = 0087H CODE 标号MAIN = 0080H CODE 标号MAX = 009DH CODE 标号MIN = 009AH CODE 标号OV = 00D2H CONST 常量P = 00D0H CONST 常量P0 = 0080H CONST 常量P1 = 0090H CONST 常量P2 = 00A0H CONST 常量P3 = 00B0H CONST 常量PCON = 0087H CONST 常量PS = 00BCH CONST 常量PSW = 00D0H CONST 常量PT0 = 00B9H CONST 常量PT1 = 00BBH CONST 常量PX0 = 00B8H CONST 常量PX1 = 00BAH CONST 常量RB8 = 009AH CONST 常量REN = 009CH CONST 常量RI = 0098H CONST 常量RS0 = 00D3H CONST 常量RS1 = 00D4H CONST 常量SBUF = 0099H CONST 常量SCON = 0098H CONST 常量SM0 = 009FH CONST 常量SM1 = 009EH CONST 常量SM2 = 009DH CONST 常量SP = 0081H CONST 常量TB8 = 009BH CONST 常量TCON = 0088H CONST 常量TF0 = 008DH CONST 常量TF1 = 008FH CONST 常量TH0 = 008CH CONST 常量TH1 = 008DH CONST 常量TI = 0099H CONST 常量TL0 = 008AH CONST 常量TL1 = 008BH CONST 常量TMOD = 0089H CONST 常量TR0 = 008CH CONST 常量TR1 = 008EH CONST 常量公有符号: 62私有符号: 0C.实验思路1.将数据录入程序中,程序分主程序和子程序1.22.程序1寻找数据中得最小值3.程序2寻找数据中的最大值4将最大值和最小值放到制定的地址5.在比较大小环节采用冒泡法。

微机原理实验报告

微机原理实验报告

微机原理实验报告班级:自动化72组员梁慕佳 07054031张乐 07054033张林鹏 07054034实验一:8255 并行接口实验1 实验目的1. 学习并掌握8255 的工作方式及其应用;2. 掌握8255 典型应用电路的接法。

2 实验设备PC机一台,TD-PITE 实验装置一套。

3 实验内容1. 基本输入输出实验。

编写程序,使8255 的A口为输入,B口为输出,完成拨动开关到数据灯的数据传输。

要求只要开关拨动,数据灯的显示就发生相应改变。

2. 流水灯显示实验。

编写程序,使8255 的A口和B口均为输出,数据灯D7~D0由左向右,每次仅亮一个灯,循环显示,D15~D8与D7~D0 正相反,由右向左,每次仅点亮一个灯,循环显示。

4 实验原理并行接口是以数据的字节为单位与I/O 设备或被控制对象之间传递信息。

CPU和接口之间的数据传送总是并行的,即可以同时传递8 位、16 位或32 位等。

8255可编程外围接口芯片是Intel公司生产的通用并行I/O 接口芯片,它具有A、B、C 三个并行接口,用+5V单电源供电,能在以下三种方式下工作:方式0--基本输入/输出方式、方式1--选通输入/输出方式、方式2--双向选通工作方式。

8255的内部结构及引脚如图2-6-1 所示,8255工作方式控制字和C口按位置位/复位控制字格式如图2-6-2所示。

图2-6-1 8255内部结构及外部引脚图图2-6-2 8255控制字格式5 实验步骤1. 基本输入输出实验本实验使8255 端口A工作在方式0 并作为输入口,端口B工作在方式0 并作为输出口。

用一组开关信号接入端口A,端口B 输出线接至一组数据灯上,然后通过对8255 芯片编程来实现输入输出功能。

具体实验步骤如下述:(1)实验接线图如图2-6-3所示,按图连接实验线路图;(2)编写实验程序,经编译、连接无误后装入系统;(3)运行程序,改变拨动开关,同时观察LED 显示,验证程序功能。

微机原理实验报告

微机原理实验报告

微机原理实验报告实验目的,通过本次实验,掌握微机原理的基本知识,了解微机系统的组成和工作原理,掌握微机系统的组装和调试方法。

实验一,微机系统组成及工作原理。

1.1 微机系统的组成。

微机系统由中央处理器(CPU)、内存、输入设备、输出设备和外部设备等组成。

其中,CPU是微机系统的核心部件,负责控制整个系统的运行。

1.2 微机系统的工作原理。

微机系统的工作原理是通过CPU对内存中的指令进行解释和执行,从而实现各种功能。

CPU通过总线与内存、输入输出设备进行数据传输和控制信号的交换,实现对整个系统的控制和管理。

实验二,微机系统的组装和调试。

2.1 微机系统的组装。

在组装微机系统时,首先要选择合适的主板、CPU、内存、硬盘等配件,然后按照正确的安装顺序和方法进行组装。

组装完成后,还需连接电源、显示器、键盘、鼠标等外部设备。

2.2 微机系统的调试。

组装完成后,需要对微机系统进行调试,检查各个部件是否连接正确,是否能够正常工作。

通过BIOS设置和操作系统的安装,完成对微机系统的调试和配置。

实验三,微机系统的应用。

3.1 微机系统的应用领域。

微机系统广泛应用于各个领域,如办公、教育、科研、娱乐等。

在办公领域,微机系统可以用于文字处理、表格制作、图像处理等;在教育领域,微机系统可以用于多媒体教学、网络教学等。

3.2 微机系统的发展趋势。

随着科技的不断发展,微机系统也在不断更新换代,性能不断提升,体积不断缩小,功耗不断降低。

未来,微机系统将更加智能化、便携化,成为人们生活、工作不可或缺的一部分。

结论,通过本次实验,我对微机原理有了更深入的了解,掌握了微机系统的组成和工作原理,了解了微机系统的组装和调试方法,对微机系统的应用和发展趋势也有了一定的认识。

这对我今后的学习和工作将有很大的帮助。

微机原理实验报告一

微机原理实验报告一

实验一汇编语言源程序的建立及DEBUG命令1、实验目的(1 ) 熟悉汇编语言源程序的建立及执行程序的生成过程;(2) 掌握EDIT、MASM、LINK的使用;(3) 掌握DEBUG调试程序方法;(4) 掌握8088汇编语言基本指令使用与简单编程。

2、实验要求(1) 用DEIT生成汇编语言源程序(*.ASM);(2) 用MASM生成目标文件(*.OBJ);(3) 用LINK生成执行文件(*.EXE);(4) 用DEBUG调试执行文件;(5) 基本寻址指令练习。

3、实验内容及步骤(1)用EDIT生成*. ASM源文件步骤:1)、进入DOS环境2)、在DOS环境中键入EDIT AAA.ASM进入全屏编辑状态3)、在2)的模式下输入程序4)、保存文件5)、保存后,按EXIT退出返回DOS,得到AAA,ASM源文件(2)用MASM生成*.,OBJ目标文件步骤:1)、进入DOS环境2)、在1)的环境下键入MASM AAA.ASM3)、直至无语法错误便得到AAA.OBJ目标文件(3)用LINK生成*. EXE执行文件在以上环境中键入LINK AAA.ASM生成*.exe文件(4)执行*. EXE文件在DOS环境中键入AAA.EXE或AAA即可(5)DEBUG基本命令使用A:汇编命令,录入指令。

A 4000:0100 从4000:0100开始的单元装入指令。

步骤:1)、进入DOS环境2)、在1)的情况下键入DEBUG有3)、在上一步的基础上键入A有U:反汇编命令,查看指令。

U:4000:0100 查看4000:0100开始的单元装入指令。

1)、在DEBUG中键入U 4000:0100有R:显示寄存器内容。

R 显示所有寄存器的内容。

R AX 显示并可修改指定寄存器的内容。

AX *** 前两位为AH的内容,后两位为AL的内容。

:不修改寄存器的内容。

AX ***:1234 将AX寄存器的内容修改为1234,AL=34,AH=12。

微机原理实验报告

微机原理实验报告

微机原理及接口技术实验报告班级:光094-2姓名:....学号:20091350429实验一熟悉宏汇编程序及debug一.实验目的1.学习并掌握汇编语言指令寻址方式2.熟悉在PC机上用DEBUG调试和运行汇编语言指令的过程。

二.实验内容根据给定寄存器内容及存储单元内容,运行给定指令,观察记录运行结果1、给定的寄存器内容及存储单元内容(DS)=2000H,(SI)=0002H,(BX)=0100H(20100H)=1H,(20101H)=34H,(20102H)=56H,(20103H)=78H,(21200H)=2AH,(21201H)=4CH,(21202H)=0B7H,(21203H)=65H2、指令(1)M OV AX,1200H(2)M OV AX,BX(3)M OV AX,[1200H](4)M OV AX,[BX](5)M OV AX,1100H[BX](6)M OV AX,[BX][SI](7)M OV AX,1100H[BX][SI]四.调试步骤1.运行DEBUG。

2.用A命令汇编指令(1)3.按给定寄存器和存储单元内容修改寄存器和存储单元内容。

4.单步运行指令,查看结果5.重复上述步骤,调试指令(2)——(7)指令寻址方式源操作数有效地址源操作数物理地址指令运行结果(AX)1 立即寻址 0100 20100 12002 寄存器寻址 0103 20103 01003 直接寻址 1200 21200 4c2a4 寄存器间接寻址0100 20100 34125 寄存器相对寻址1200 21200 4c2a6 基址变址寻址 0102 20102 78567 相对基址变址寻址1202 21202 65b7 六.思考题1、汇编语言指令有哪些寻址方式?用于寻址的寄存器有哪些?立即数寻址、直接寻址,寄存器寻址,寄存器间接寻址,寄存器相对寻址,基址变址寻址,基址变址相对寻址。

对于16位数据,寄存器可以是AX,BX,CX,DX,SI,DI,SP,BP; 对于8位数据,寄存器可以是AH,AL,BH,BL,CH,CL,DH,DL实验二寻址方式练习及多字节运算程序一.实验目的1.学习并掌握数据传送指令和算术运算指令2.熟悉在PC机上编辑、汇编、连接、调试与运行汇编语言程序的过程。

微机原理实验报告

微机原理实验报告

微机原理实验报告
一、实验目的
本次实验的主要目的是了解微机原理、学习微机的基础知识、技能和操作方法,还有熟悉微机实验室的使用方法。

二、实验过程
在实验室中,我们首先进行了掌握微处理器的基本指令集和编程技巧的实验。

通过对微处理器的学习,我们了解到了微处理器的组成结构和工作原理,同时也了解了微处理器的基础指令集,包括数据的传送、算术、逻辑、分支、循环指令等等。

接着我们进行了CPU总线实验。

通过对CPU总线的学习,我们了解了CPU读写内部和外部存储器的方法和原理。

同时,我们学习了编写程序来控制CPU读写存储器等。

最后,我们进行了8255并行接口控制实验。

通过学习并实践8255并行接口控制实验,我们了解了接口及其编程。

三、实验结果
在实验中,我们成功地掌握了微处理器的基本指令集和编程技巧,了解了微处理器的组成结构和工作原理,同时掌握了CPU总
线实验和8255并行接口控制实验。

在实验中不仅增长了专业知识,而且也培养了我们的实验能力,并进一步增强了我们的实践能力。

四、实验心得
通过这次实验,我们意识到,要想成为一名优秀的计算机专业
人才,必须首先打牢微机原理的基础,通过大量的实践和实验,
来应用理论知识,深入了解计算机底层的数据处理方式以及处理
器和存储器的工作原理。

只有这样才能够在日后工作中运用自如,并且在以后的学习和研究中更具备竞争力。

在以后的学习中,我将持续学习和实践,不断探索和发现,提
升自身的能力,为未来的发展做好充分的准备。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2.1 寻址方式与基本指令实验
2.1.1 实验目的
1、熟悉80x86寻址方式及基本指令的功能,进一步理解和巩固课堂学习内容。

2、掌握汇编语言程序设计上机过程, 掌握汇编语言源程序结构,为后续汇编语言程序设计
打好基础。

3、熟悉Microsoft的DEBUG或Borland的Turbo DEBUG调试工具的使用方法
2.1.2 实验预习要求
1、认真阅读本书第一部分第1章,熟悉汇编语言程序设计上机步骤。

2、认真阅读本书第三部分,熟悉DEBUG调试工具的使用方法。

3、复习80x86操作数寻址方式及基本指令(数据传送、算术运算和逻辑运算等)。

4、了解实验内容,并在实验前根据课堂所学知识回答有关问题(个别取决于程序实际运行
环境的问题除外),以便在实验时进行验证。

2.1.3 实验内容
1、读懂下面的源程序,使用EDIT生成名为EX11.ASM的源程序,汇编生成EX11.OBJ文件和EX11.LST文件,连接生成EX11.EXE文件,用EXIT打开EX11.LST文件,了解.LST 文件包含的信息,使用DEBUG调试工具单步执行EX11.EXE程序,注意观察IP值的变化,并回答下列问题。

○1程序装入后,代码段寄存器CS的内容为1138H,代码段第一条可执行指令“MOV AX DA TA”对应的机器代码为0000B83711H,它是一个——字节指令,注意观察执行该指令是IP 值的变化情况,该指令源操作数DATA的寻址方式是立即数寻址方式,其值是1137。

○2执行完“MOVDSDA TA”指令后,数据段寄存器DS的内容为1127H,源程序在数据段中定义的数据82H、68H和88H被装入的存储单元的物理地址分别为11270H、11271H和11272H。

○3程序中第一条“ADDAL[BX]”指令对应的机器代码为0008 8A07H,它是一个四字节指令,注意观察执行该指令时IP值的变化情况;该指令中源操作数的寻址方式为寄存器间接寻址方式,该操作数所在的存储单元的逻辑地址(DS):(BX)为1137:0000,其物理地址为11370H,执行完该指令后(AL)=37H,CF=0H,OF=0H,ZF=0H,SF=0H,AF=0H,PF=0H;计算结果正确,结果是负数
○4执行完第二条“ADD AL [BX]”指令后(AL)=82H,CF=0H,OF=0H,ZF=0H,SF=1H,AF=0H,PF=0H;计算结果正确,结果是负数
○5指令“MOV SUM,AL”中,目的操作数的寻址方式为寄存器直接寻址方式。

该指令执行完后,注意观察(DS):0003H单元中值的变化,该单元值变为00H。

DA TA SEGMENT
NUM DB 82H,68H,88H
SUM DB ?
DA TA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DA TA
START: MOV AX,DA TA
MOV DS,AX
MOV BX,OFFSET NUM
MOV AL,[BX]
INC BX
ADD AL,[BX]
INC BX
ADD AL,[BX]
MOV SUM ,AL
MOV AH,4CH
INT 21H
CODE ENDS
END START
2、读懂下列源程序,编辑,汇编,连接生成EX12.ASM、EX12.OBJ、EX12.LST、
EX12.EXE文件,使用DEBUG单步执行EX12.EXE文件,并回答下列问题。

○1代码的前三条指令“MOV AX ,STACK”、“MOV SS,AX”和“MOV SP,LENGTH STL”的功能为堆栈初始化,试问执行完这三条指令后,堆栈栈底所在单元的逻辑地址(SS):(SP)为:1137:0100;执行“PUSH AX”指令后,堆栈指针寄存器(SP)=0100H,此时,(SS):(SP+1)和(SS):(SP)单元的值为0102 0100H,执行完“POP AX”后,(SP)=——H;执行完“POP BX”后,(SP)=00FEH;,此时(AX)=4CA3H,(BX)=4CA3H。

○2执行“ADD AX ,BX”指令后(AX)=5B0AH,CF=0H,OF=0H,ZF=0H,SF=0H,AF=0H,PF=0H;若两操作数为无符号数,计算结果正确,若两操作数为带符号数,则计算结果不正确
○3执行“AND AX ,BX”指令后(AX)=4CA3H,CF=1H,OF=0H,ZF=0H,SF=1H,AF=0H,PF=0H。

STACK SEGMENT stack
STL DW 100H DUB(?)
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE,SS:STACK
START: MOV AX, STACK
MOV SS, AX
MOV SP, LENGTH STL
MOV AX, 0101101100001010B
MOV BX, 0100110010100011B
PUSH AX
PUSH BX
ADD AX, BX
POP AX
POP BX
AND AX,BX
MOV AH,4CH
INT 21H
CODE ENDS
END START
3、指出下列指令的错误原因,上机运行,观察汇编程序(MASM.EXE)给出的出错
信息,改正后再上机验证。

○1MOV BP, BL
○2MOV [BX],[BP] ○3MOV [BX],20H ○4INC [SI]
○5ADD AX,[SI+DI] ○6SHL AX,3
○7PUSH 2000H
○8POP AL
○9MOV CS,AX

10MOV DS,1000H
解答:1:错误信息为:End of file,no end directive; Operand types must math
错误原因:BP是16为寄存器,BL是8位
2:错误信息为:End of file,no end directive; Improper Operand type
错误原因:原操作数和目的操作数不能同时为存储器
3:错误信息为:End of file,no end directive; Operand MUST HA VE SIZE 错误原因:操作数类型不明确
4:错误信息为:End of file,no end directive; Operand MUST HA VE SIZE 错误原因:操作数类型不明确
5:错误信息为:End of file,no end directive;MULTIPLE INDEX REGISTERS 错误原因:SI和DI不能同时出现在操作数中
6:错误信息为:End of file,no end directive; Improper Operand type
错误原因:循环次数大于1应间接移位
7:错误信息为:End of file,no end directive; IMMEDIATE MODE ILLEGAL 错误原因:不能对立即数进行堆栈操作
8:错误信息为:End of file,no end directive; ILLEGAL SIZE FOR OPERAND 错误原因:POP不能对字节操作
9:错误信息为:End of file,no end directive; DATA EMITTED WITH NO SEGMENT 错误原因:CS不能作为目的操作数
10:错误信息为:End of file,no end directive; IMMEDIATE MODE ILLEGAL 错误原因:立即数不能送人数据段
2.1.4 实验小结
1.通过本次试验使我进一步加深了对课本内容的理解,进一步理解了汇编语言的执行过程
2.了解汇编语言的编程思想及过程
3.对知识的理解有理论转化成实际的操作及理解
4.通过试验了解到自己对理论的掌握依旧不到位,应该进一步的学习,训练。

相关文档
最新文档