




已阅读5页,还剩19页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
算术逻辑运算实验报告计算机组成原理实验报告 专 业:计算机+自动化 姓 名:桑超强(201126100416) 陆黎明(201126100412)实验二 算术逻辑运算实验一、实验目的: 了解运算器的组成结构 掌握运算器的工作原理 掌握简单运算器的数据传输通路 验证运算功能发生器74LS181的组合功能二、实验设备 TDNCM+教学实验系统一套3、 实验原理1、 运算器芯片(74LS181)的逻辑功能74LS181 是一种数据宽度为4个二进制的多功能运算器芯片,封装在24引脚的封装壳中,封装型式如图2.1所示。图2.1 74LS181封装图主要引脚有:(1) A0-A3:第一组操作数据输入端。(2) B0-B3:第二组操作数据输入端。(3) F0-F3:操作结果数据输出端。(4) S0-S3:操作功能控制端。(5) :低端进位接收端。(6) :高端进位输出端。(7) M:算术/逻辑功能控制端。芯片的逻辑功能见表2.1。从表中可看到当控制端S0-S3为1001、M为0、为1时,操作结果数据输出端F0-F3上的数据等于第一组操作数据输入端A0-A3上的数据加第二组操作数据输入端B0-B3上的数据。当S0-S3、M、上的控制信号电平不同时,74LS181芯片完成不同功能的逻辑运算操作或算术逻辑运算。在加法运算操作时,、进位信号低电平有效;减法运算操作时,、借位信号高电平有效;而逻辑运算操作时,、进位信号无意义。表2.1功能选择输入、输出关系S3 S2 S1 S0M=H 逻辑运算M=L 算术运算 = H = L0 0 0 0F=F=AF=A加10 0 0 1F=F=A+BF=加0 0 1 0F=*BF=A+F=A+加10 0 1 1F=0F=0-1F=00 1 0 0F=F=A加A*F=A加A*加10 1 0 1F=F=加*F=加*加10 1 1 0 F=ABF=A减B减1F=A减B0 1 1 1F=A*F=(A*)减1F=A*1 0 0 0F=+BF=A+(A*B)F=A加(A*B)加11 0 0 1F=F=A加BF=A加B加11 0 1 0F=BF=(A+)加(A*B)F=(A+)加(A*B)加11 0 1 1F*BF=A*B加1F=A*B1 1 0 0F=1F=A加AF=A加A加11 1 0 1F=A+F=(A+B)加AF=(A+B)加A加11 1 1 0F=A+BF=(A+)加AF=(A+)加A加11 1 1 1F=AF=减F=A图2.1数据逻辑运算部件原理图2、 运算器实验逻辑电路试验台运算器实验逻辑电路中,两片74LS181芯片构成一个长度为8位的运算器,两片74LS373分别作为第一操作数据寄存器和第二操作数据寄存器,一片74LS245作为操作结果数据输出缓冲器,逻辑结构如图2.2所示。图中算术逻辑操作时仅为Cy判别进位只是电路;判零Zi和零标志电路指示电路。第一操作数据由B-DA1(BUS TO DATA1)负脉冲控制信号送入名DA1的第一操作数据寄存器,第二操作数据由B-DA2(BUS TO DATA2)负脉冲控制信号送入名为DA2的第二操作数据寄存器。74LS181的运算结果数据由(ALU TO BUS )低电平控制信号送总线。S0-S3、M芯片模式控制信号同时与两片74LS181的S0-S3、M端相连,保证二者以同一工作模式工作。实验电路的地端进位接收Ci与低4位的74LS181的相连,用于接收外部进位信号。低4位74LS181的与高4位74LS181的上相连,实现高、低4位之间进位信号的传递。高4位74LS181的送进位Cy判别和进位指示电路。4、 实验内容1、连线图2.2 实验连线图 按照上图进行实验连线;2、 数据送入过程(1) 把开关、B-DA1、B-DA2、拨上,确保为高电平,使这些信号出于无效状态。(2) 在输入数据的开关上拨号输入数据代码,如“00010001”,即16进制数11H(3) 把 输入控制信号开关拨下成低电平。这时总线上显示的状态与输入数据一致。(4) 把第一组数据输入控制信号B-DA1的开关拨动一次,即实现“0-1-0”,产生一个负脉冲,作用是把数据11H送第一数据寄存器DA1中。3、 数据输出过程(1) 为了检验数据送入的正确性,现把DA1中的内容送到总线上。(2) 把输入数据的开关上的输入数据代码拨成00H,与刚才送第一数据寄存器DA1的数据区分开。(3) 把输入控制信号开关拨上成高电平无效,这时总线上的状态应该与输入数据无关,显示为FFH。(4) 把74LS181功能控制端S3-S0设置为1111,为,参照74LS181逻辑功能表,其输出数据等于第一组数据输入端,即DA1上的数据(5) 把控制信号拨成低电平,可以看到第四数据寄存器DA1中的数据“11H”经74LS181的输入端传送到输出口,再传送到总线BUS上(6) 使用类似的方法把数据“00100001”用第二数据寄存器输入控制信号B-DA2,将其送到第二数据寄存器DA2,再把第二寄存器DA2中的数据送总线。74LS181的功能控制端S3-S0为“1010”,M为1 的功能是把第二组数据输入端B的数据送到输出端F。同样把控制信号拨成低电平,把数据传送到数据总线BUS。4、 数据运算过程(1) 在完成数据输入、输出的基础上进行数据运算操作(2) 从LS181逻辑功能表上差得“A加B,不考虑低端仅为”操作的功能控制码为S3-S0=1001、M=0,Ci=1,把这些控制码拨好。(3) 把控制信号拨下呈低电平,这时运算结果送到总线,在总线指示灯上可观察到此数据。(4) 把控制信号开关波动一次,即实现“1-0-1”,产生一个负脉冲,这时总线上的数据就送到输出缓冲器,显示在LED指示灯L7-L0上。(5) Ci是地位进位输入,Ci=1表示无进位,Ci=0表示有进位。在进行“A加B”操作时,Ci=1,操作结果是“00110010”,即16进制数32H;Ci=0,操作结果是“00110011”,即16进制数33H,从而可以验证低端位进位输入的作用。(6) 变换操作功能控制码S3-S0=0110,M=0,进行A减B操作,进行减发操作时,Ci表示无错位,用上面的数据做减法运算,结果应为16进制数10H;Ci=1表示有错位,运算结果应为16进制数0FH(7) 变换不同的操作数据,观察不同的运算结果;变换不同的功能控制码S3-S0、M,进行不同的操作过程,观察不同的结果。五、实验结果总结表2.1实验结果记录DA1DA2S3-S0M=0(算术运算)M=1(逻辑运算)Ci=1Ci=065H0A7H0000F=(01100101)F=(01100110)F=(10011010)65H0A7H0001F=(11100111)F=(11101000)F=(00011000)65H0A7H0010F=(01111101)F=(01111110)F=(10000010)65H0A7H0011F=(11111111)F=(00000000)F=(00000000)65H0A7H0100F=(10100101)F=(10100110)F=(11011010)65H0A7H0101F=(00100101)F=(00101000)F=(01011000)65H0A7H0110F=(10111101)F=(10111110)F=(11000010)65H0A7H0111F=(00111111)F=(01000000)F=(01000000)65H0A7H1000F=(10001010)F=(10001011)F=(10111111)65H0A7H1001F=(00001100)F=(00001101)F=(00111101)65H0A7H1010F=(10100010)F=(10100011)F=(10100111)65H0A7H1011F=(00100100)F=(00100101)F=(00100111)65H0A7H1100F=(11001010)F=(11001011)F=(11111111)65H0A7H1101F=(01001100)F=(01001101)F=(01111110)65H0A7H1110F=(11100010)F=(11100011)F=(11100111)65H0A7H1111F=(01100100)F=(01100101)F=(01100101)实验五 存储器读写实验报告1、 目的与要求掌握存储器的工作特性 熟悉静态存储器的操作过程验证存储器的读写方法 二、实验原理存储器是计算机的主要部件,用来保存程序与数据。从工作方式上分类,存储器可以分为易失性和飞易失性存储器,易失性存储器中的数据在关电后就不复存在,非易失性存储器的数据在关电后不会丢失。易失性存储器又可以分为动态存储器和静态存储器,动态存储器保存信息的时间只有2ms,工作时需要不断更新,既不断刷新数据静态存储器只有不断电,信息是不会丢失的。为简单起见,计算机组成实验用的是容量为2k的静态存储器6116。1.静态存储器芯片6116的逻辑功能 6116是一种数据宽度为8位8个二进制位容量为2048字节的静态存储器芯片封在24引脚的封装中封装型式如图2-7所示。6116芯片有8根双向三态数据线D7-D0所谓三态是指输入状态输出状态和高阻状态高阻状态数据线处于一种特殊的“断开”状态11根地址线A10-A0指示芯片内部2048个存储单元号3根控制线CS片选控制信号低电平时芯片可进行读写操作高电平时芯片保存信息不能进行读写WE为写入控制信号低电平时把数据线上的信息存入地址线A10-A0指示的存储单元中OE为输出使能控制信号低电平时把地址线A10-A0指示的存储单元中的数据读出送到数据线上。 表5.1、6116芯片控制信号逻辑功能表 芯片状态 控制信号状态 D7D0 数据状态CSWEOE保持1XX高阻抗保持011高阻抗读出0106116-总线写入001总线-6116无效0002.存储器实验单元电路 因为在计算机组成原理实验中仅用了256个存储单元所以6116芯片的3根地址线A11-A8接地也没有多片联用问题片选信号CS接地使芯片总是处于被选中状态。芯片的WE和OE信号分别连接实验台的存储器写信号M-W和存储器读信号M-R。这种简化了控制过程的实验电路可方便实验进行。图5.1、存储器部件电路图表5.2、存储器实验单元电路逻辑控制信号逻辑功能表 电路状态 控制信号状态 D7D0 数据状态M-RM-W保持11高阻抗读出006116-总线写入11总线-6116无效00报警3.存储器实验电路 存储器读写实验需三部分电路共同完成存储器单元MEM UNIT地址寄存器单元ADDRESS UNIT和输入输出单元INPUT/OUTPIT UNIT.存储器单元6116芯片为中心构成地址寄存器单元主要由一片74LS273组成控制信号B-AR的作用是把总线上的数据送入地址寄存器向存储器单元电路提供地址信息输入输出单元作用与以前相同图5.2、存储器实验电路逻辑图3. 实验过程1、连线 1、连接实验一输入、输出实验的全部连线。 2、按实验逻辑原理图连接M-W、M-R两根信号低电平有效信号线。 3、连接A7A0 8根地址线。 4、连接B-AR正脉冲有效信号线。 2、顺序写入存储单元实验操作过程 1、把B-AR控制开关拨到0因此信号是正脉冲有效把其他控制开关全部拨到1使全部控制信号都处于无效状态。2、 在输入数据开关上拨一个地址数据如00000001即16进制数01H拨下IO-R开关把地址数据送总线。 3、 拨动一下B-AR开关实现“0-1-0”产生一个正脉冲把地址数据送地址寄存器AR保存。 4、在输入数据开关上拨一个实验数据如10000000即16进制数80H拨下IO-R控制开关把实验数据送到总线。 5、拨动M-W控制开关即实现“1-0-1”产生一个负脉冲把实验数据存入存储器的01H号单元。 6、按表2-11所示的地址数据和实验数据重复上面1、2、3、44个步骤顺序在存储器单元中存放不同的A实验数据。表5.3、实验数据地址单元实验数据01H80H02H40H03H20H04H10H05H08H36H55H3、 顺序读出存储器单元实验操作过程 1、在输入数据开关上拨一个地址数据如00000001即16进制数01H拨下IO-R开关把地址数据送总线。 2、拨动一下B-AR开关即实现“0-1-0”产生一个正脉冲把地址数据送地址寄存器AR保存。 3、把IO-R开关拨上切断输入开关与总线的联系。 4、拨下M-R控制开关把实验数据从存储器的01H号单元读出送总线验证实验数据。 5、拨动IO-W开关即实现“1-0-1”产生一个负脉冲把从存储器读出的实验数据从总线送输出显示电路L7-L0。 6、拨上M-R控制开关使存储器处于保持状态。 7、重复上面的166个步骤按顺序从地址01H05H的存储器单元中读出实验数据送输出显示电路L7L0验证读出数据与表211中的内容是否相符。4、 随机读出存储器单元实验操作过程 重复上面166个步骤分别从地址36H25H03H3个不连续的存储器单元中读出数据验证实验数据是否与表211中的内容相符合注意地址25H这个存储单元中没有写入过实验数据读出的内容应是随机值。 4、 结果与总结1.参照上面的实验数据表,自己设计实验数据进行实验,记录实验过程中的情况和原始数据。2.如果不向总线传送任何数据,在总线悬空的情况下将实验数据写入某个存储单元,然后读出实验数据,会产生什么结果,为什么?3.把实验数据填入表中,总结解决问题的方法和过程,把观察到的现象和对书本原理的理解写入实验报告。表5.4、实验五结果记录地址写入数据读出数据结果说明01H80H1000 0000 地址01H里存储的是原先写入的数据80H02H40H0100 0000地址02H里存储的是原先写入的数据40H03H20H0010 0000地址03H里存储的是原先写入的数据20H04H10H0001 0000地址04H里存储的是原先写入的数据10H05H08H0000 1000地址05H里存储的是原先写入的数据08H25H不写存储器1001 1110地址25H不写数据36H55H0101 0101地址36H里存储的是原先写入的数据55H0A0H写总线悬空时的数据1111 1111总线悬空时,可能默认输入数据为1111 11115、 实验遇到的问题及解决方法 问题 1:我们刚开始的时候步骤完全按书上的来但验证结果却不一样 原因后来我们仔细看了一下发现原来是线的两端接反了。我们把输入输出中的M-WM-R和手动开关控制器中的M-WM-R接反了。 问题2:在读出存储器单元时我们发现读完一个地址后读第二个地址时开关IO-R和M-R同时在下面这时实验仪器会叫 原因我们实验时使用的仪器是单总线接口当M-W在下面时这时再拨下IO-W 会造成总线同时有两个数据输入所以发生了冲突。这时应该把M-W拨上即可。 解决方法 1、在连线的时候要仔细些切不能粗心大意这次只是实验结果做不出来以后可能会遇到更大的麻烦。 2、在做实验前要提前预习了解各个按键的功能以及相互间的联系。 6、 实验猜想 输入一个地址后不在存储器中写入数据读出的实验数据可能有下面几种结果: 1、输出的可能是出产前预设定的数据。 2、输出的可能是上次实验输入的数据。 3、总线悬空时输出的是1111 1111 原因可能是当总线悬空时默认输入为1。 7、 实验心得体会 这次实验其实还是蛮简单的主要考察的是我们的动手能力 但是其过程也不是都是那么顺利的所以在今后的学习中要更加的注意学习方法。通过本次实验我们对存储器的工作原理有了更深一步的了解。经过一次次拨动开关的操作逐步熟悉了数据的写入与读出方式。与此同时对计算机的系统结构也有了进一步的认识了解了运算器、存储器、数据总线、地址总线等计算机部件的运作原理为以后的学习及实验打下了基础。综合实验一 机器指令设计实验-实验报告一、 实验目的与要求(1)通过实验分析简单模型机结构,了解计算机工作原理。(2)掌握计算机微程序控制器的控制方法,掌握计算机指令执行过程。(3)简单模型计算机部件构架、微程序控制器中微程序代码功能实现、微程序流程、指令系统定义和简单模型计算机汇编语言程序进行验证。(4)在简单模型计算机基础上设计新的技巧指令,在第二章实验八的基础上实施,使用的实验部件和接线不变,增加5条新机器指令,目的是提高学生对计算机机器指令的理解,锻炼学生自己动手设计模型计算机机器指令的能力。二、 实验原理1. 简单模型计算机构架简单模型计算机逻辑结构如图1所示,构成简单模型计算机的实验部件以总线为基本连接通道,主要有以下7个:(1)算术逻辑运算部件ALU UNIT进行算术逻辑运算操作。(2)存储器部件MEM UNIT,存储模型计算机汇编语言程序和操作数据。(3)地址寄存器部件ADDRESS UNIT,包含两部分电路,地址寄存器AR:接收存储器程序中的指令地址和指令中的数据地址;指令地址计数器PC:用于指示程序中的指令地址并通过地址缓冲器送往地址寄存器AR。(4)指令寄存器部件INS UNIT,寄存器当前正在执行的机器指令,此指令的指令码通过指令译码器向微程序控制器指示相应的微程序入口地址;此指令的地址码指示的操作数地址,送往地址寄存器AR。(5)输入/输出部件INPUT/OUTPUT,操作数据的输入与输出显示。(7) 通用寄存器部件REG UNIT,暂存运算的中间数据。(7)微程序控制器部件MAIN CONTROL UNIT,控制各部件完成指令的功能。2. 简单模型计算机指令系统此简单模型计算机的指令系统包括控制台指令与机器指令。共三条控制台指令,由手动控制单元(MANUAL UNIT)的KB,KA开关设定。控制台指令只能由手工操作一条条指令,不能编写在汇编程序中。实验八已经给出5条机器指令。分别是输入指令IN R0,PORTAR,算术加指令ADD R0,ADDR,寄存器内容送存储器指令STA ADDR,R0,输出指令OUT PORTAR,ADDR,转移指令JMP PORTAR。如表1所示。另外根据微指令格式,可以设计出实验要求的5条指令。先进行微指令译码分析,然后详细说明如何设计。(1)微指令译码分析:图1-简单模型计算机逻辑结构图表1-简单模型机指令表指令名称助记符指令码格式输入IN R0,PORTARI7,I6,I5,I4,I3,I2,I1,I01 1 0 0 0 0 DRPORTAR算术加ADD R0,ADDRI7,I6,I5,I4,I3,I2,I1,I01 1 0 0 0 1 DRADDR寄存器内容送存储器STA ADDR,R0I7,I6,I5,I4,I3,I2,I1,I01 1 0 0 1 0 DRADDR输出OUT PORTAR,ADDRI7,I6,I5,I4,I3,I2,I1,I01 1 0 0 1 1 DRPORTAR转移JMP ADDRI7,I6,I5,I4,I3,I2,I1,I01 1 0 1 0 0 XXADDR注:该模型机的输入输出设备端口号(PORTAR)只有一个,为00H。DR指示4个通用寄存器中的一个。JMP为跳转地址为直接地址,即将ADDR赋值给PC。当模型机的一条指令执行时,由指令译码器确定一个与此指令对应的微程序入口地址,经地址缓冲器送微控制存储器的地址通道,然后从微控制存储器相应单元中读出24位微指令代码,其中高17位送微指令控制代码段寄存器,由微指令译码器产生控制信号,低7位送微指令地址代码段寄存器(7位),指出微控制存储器中下一微指令的地址。微指令代码共分7段:(1) BTO:数据从总线送部件控制段,3位。(2) OTB:数据从部件送总线控制端,3位。(3) FUNC:地址转移、读写功能控制端,3位。(4) FS:方式功能控制段:1位。(5) S3,S2,S1,S0,M,Ci:模式功能控制段,6位。(6) N:备分段,1位。(7) NEXT:下一条微指令地址段,7位。表2-微指令字段编码表编码+译码BTOOTBFS=1FS=0FUNC000PC+1(T4)001B-DA1(T4)ALU-B#J(1)M-W#(T3)010B-DA2(T4)299-B#J(2)M-R#(T2)011B-IR(T3)SR-B#J(3)I/O-W#(T3)100B-DR(T4)DR-B#J(4)I/O-R#(T2)101B-SP(T4)SI-B#J(5)INT-R#(T2)110B-AR(T3)SP-B#CyCn#INT-E#(T3)111B-PC#PC-B#CyNCn#表3-散转微地址形成规则表散转条件散装微地址形成规则j(1)条件指令码I7 I6=11时,散转入口地址=微代码下址(OR)0,1,0,I5,I4,I3,I2指令码I7 I6!=11时,散转入口地址=微代码下址(OR)0,0,0,I7,I6,I5,I4j(2)条件散转入口地址=微代码下址(OR)0,0,0,0,0,I3,I2j(3)条件散转入口地址=微代码下址(OR)0,0,0,0,0,KB,KAj(4)条件散转入口地址=微代码下址(OR)0,0,0,0,0,FC,FZj(5)条件散转入口地址=微代码下址(OR)0,INT,0,0,0,0,0注:表格中FC为进位标志,FZ为零标志。本实验只要到J(1),J(3),J(4)四条散转条件。表4-简单模型计算机机器指令表指令功能INADDSTAOUTJMP指令符号数据输入算术加数据传输数据输入跳转微程序入口地址30H31H32H33H34H(2)微程序流程图根据实验八的机器指令和控制台指令可以画出图2所示的流程图。图2-模型计算机指令执行流程图 三、 四条指令的微程序代码设计根据实验要求的汇编程序,发现并不需要INC DR这条指令,所以也没有对其进行微代码的设计。另外显然PC-AR,PC+1-PC ; 01H-02HRAM-IR;02H-03HJ(1)散转;03H-(10H)三条微指令动作为公操作。因此我们只需要考虑除此之外的其他微指令动作。下面对4条指令,逐条进行解释分析。1. 无借位减:SUB DR, ADDRa. 指令功能:(SR)-(DR)-DR,影响Cy,Zi标志位。当(SR)AR,PC+1-PC ; 01H-02HRAM-IR;02H-03HJ(1)散转;03H-(10H)PC-AR,PC+1-PC;35H-12HRAM-AR;12H-13HRAM-DA1;13H-14HDR-DA2;14H-15HDA1-DA2-DR;15H-01Hd. 微程序代码:微地址微代码BTOOTBFUNCFSS3S2S1S0MCiN下址微指令注释35HDC4012110111000100000000010010PC-AR,PC=PC+112HC10013110000010000000000010011RAM-AR13H210014001000010000000000010100RAM-DA114H500015010100000000000000010101DR-DA215H87D801100001111101100000000001DA1-DA2-DR2. 带进位加:ADDC DR, ADDRa. 指令功能:(SR)+(DR)+Cy-DR,影响Cy,Zi标志位。当(SR)+(DR)+Cy255时,Cy=1,当(SR)+(DR)+Cy=256时,Zi=1。.这条指令可实现多字节的加法操作。b. 指令格式:c. 指令流程:PC-AR,PC+1-PC ; 01H-02HRAM-IR;02H-03HJ(1)散转;03H-(10H)PC-AR,PC+1-PC;36H-18HRAM-AR;18H-19HRAM-DA1;19H-1AHDR-DA2;1AH-1BHDA1+DA2+Cy-DR;1BH-01Hd. 微程序代码:微地址微代码BTOOTBFUNCFSS3S2S1S0MCiN下址微指令注释36HDC4018110111000100000000011000PC-AR,PC=PC+118HC10019110000010000000000011001RAM-AR19H21001A001000010000000000011010RAM-DA11AH50001B010100000000000000011011DR-DA21BH87D801100001110110010100000001DA1+DA2+Cy-DR,CyCn3. C条件转移:JMPC ADDRa. 指令功能:若Cy=1,则ADDR-PC, 否则顺序执行下条指令。影响Cy,Zi标志位。b. 指令格式:c. 指令流程:PC-AR,PC+1-PC ; 01H-02HRAM-IR;02H-03HJ(1)散转;03H-(10H)PC-AR,PC+1-PC;37H-41HRAM-AR;41H-42HRAM-DA1;42H-43HJ4#条件散转转移;43H-(44H)若Cy=0;44H-01H若Cy=1;44H-46HDA1-PC;46H-01Hd. 微程序代码:微地址微代码BTOOTBFUNCFSS3S2S1S0MCiN下址微指令注释37HDC4041110111000100000001000001PC-AR,PC=PC+141HC10042110000010000000001000010RAM-AR42H210043001000010000000001000011RAM-DA143H024044000000100100000001000100J(4)44H000001000000000000000000000001NULL45H000000000000000000000000000000NULL46HE44101111001000100000100000001DA1-PC,PC+1有效值得注意的是,此条“C条件转移”指令,跳转的是ADDR中的内容,而非ADDR,这一点也JMP不同。而将JMPC ADDR,改成JMPC ADDR也相当得容易。只要将微程序代码中微地址为37H的微代码改成DC4042即可。也就是跳过RAM-AR不执行。4. 存储器内容送通用寄存器 LDA DR, ADDRa. 指令功能:(ADDR)-DR,不影响Cy,Zi标志位。b. 指令格式:c. 指令流程:PC-AR,PC+1-PC ; 01H-02HRAM-IR;02H-03HJ(1)散转;03H-(10H)PC-AR,PC+1-PC;39H-3CHRAM-AR;3CH-3DHRAM-DA1;3DH-3EHDA1-DR;3EH-01Hd. 微程序代码:微地址微代码BTOOTBFUNCFSS3S2S1S0MCiN下址微指令注释39HDC403C110111000100000000111100PC-AR,PC=PC+13CHC1003D110000010000000000111101RAM-AR3DH21003E001000010000000000111110RAM-DA13EH843C01100001000011110000000001DA1-DR根据这四条指令微代码可以得到如图3所示流程图。图3-新增指令逻辑结构图四、 汇编程序设计1. 程序功能程序功能是对输入开关上的数据和存储器某一单元中的数据进行加法操作,结果累计在存储器某个单元中,当累计值大于256时转而进行减法操作,即把此存储器单元中的值减去输入开关上的数据,结果送同一存储器单元中,当操作结果小于0时再转而进行加法操作,使输出显示顶上出现数据连续加,然后连续减,减到0时候连续加。这样连续加、连续减直到拨动结束程序运行为止。2. 程序流程图图4-汇编语言程序流程图3. 汇编程序代码:端口号(POATAR)只有一个,为00H。主存储器单元地址为30H存放数据,用主存储器单元31H,32H来存放跳转地址。由于JMPC ADDR跳转的是ADDR所指内容,故需要额外的开销。如果尝试把C条件转移改成JMPC ADDR也是很简单的事情,具体可以查看附件excel表格MY-CODE.XLS中的“汇编代码1”表。每次存储器值更新,都通过OUT指令进行存储器内容送入输出设备(00H)显示。另外,由于简单模型机机器指令并没有立即数传输给寄存器或存储器,因此存储器清零操作需要一定的技巧。我们采用的方法是先把存储器内容传给寄存器,然后存储器内容减去寄存器内容,值送入寄存器,该值为0,然后把该值通过寄存器送入存储器。详细的汇编程序代码如下表4所示。表4-汇编程序代码表主存储器地址指令码汇编代码说明00HE4HLAD R0,30H存储器清零01H30H02HD4HSUB R0,30H 03H30H04HC8HSTA 30H,R005H30H06HCCHOUT 00H,30H07H30H08H00H09HCOHIN R0,00H存储器内容=存储器内容+输入值0AH00H0BHC4HADD R0,30H0CH30H0DH C8HSTA 30H, R00EH30H0FHCCHOUT 00H,30H10H30H11H00H12HDCHJMPC 32H存储器内容=265 ?13H32H14HD0HJMP 09H15H09H16HC0HIN R0,00H存储器内容=存储器内容-输入值17H00H18HD4HSUB R0,30H 19H30H1AHC8HSTA 30H, R01BH30H1CHCCHOUT 00H,30H1DH30H1EH00H1FHDCHJMPC 31H存储器内容0 ?20H31H21HD0HJMP 16H22H16H30HADDR31H932H16五、 实验步骤通过Yy-z02模型机软件,省去了微代码与机器指令汇编程序的手动写入与检查,大大提高了实验效率。因为这里不再对微代码与机器指令汇编程序的装入操作进行说明。而实验连线也相对简单,故也不再进行罗列。实验步骤如
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025浙江中国小商品城集团股份有限公司招聘98人笔试参考题库附带答案详解
- 2025新疆哈密镜儿泉矿业有限责任公司第一批面向社会招聘19人笔试参考题库附带答案详解
- 卸货安全培训课件
- 2025年福建省榕圣建设发展有限公司项目招聘12人笔试参考题库附带答案详解
- 卸油操作安全培训课件
- 2025年佛山市禅城区国有资产监督管理局下属企业招聘工作人员4人笔试参考题库附带答案详解
- 2025山东聊城市市属企业统一招聘24人笔试参考题库附带答案详解
- 2025山东土地资本投资集团有限公司春季社会招聘10人笔试参考题库附带答案详解
- 2025国网西藏电力有限公司高校毕业生招聘约305人(第二批)笔试参考题库附带答案详解
- 2025四川资阳瑞达产业投资集团有限公司招聘9人笔试参考题库附带答案详解
- SYT 6680-2021 石油天然气钻采设备 钻机和修井机出厂验收规范-PDF解密
- 《遗传学》课程标准
- 蛋白质分离纯化及鉴定
- 2024年化粪池清理合同协议书范本
- 实用美术基础中职全套教学课件
- 债权债务法律知识讲座
- 南京财经大学《812西方经济学(宏观经济学、微观经济学)》历年考研真题及详解
- 基于教育培训行业的客户关系营销研究
- 肉制品工艺学-香肠类制品-课件
- 超全QC管理流程图
- 2广告实务课程标准
评论
0/150
提交评论