微型计算机原理及应用作业题第1章1.冯诺依曼体系结构计算机包括五大组成部分,分别为运算器,控制器,存储器,输入设备和输出设备。2.(29)10转化为二进制是(11101)2;(1101110)2转化为十六进制是(6E)16。3.机器数可以用不同的方法表示,常用的编码方式有原码,反码,补码。4.(25)10转化为二进制是11001;(1101010)2转化为十六进制是6A。第2章1.标志寄存器FR中零标志是ZF,进位标志是CF,溢出标志是OF。2.段地址和偏移地址为3017:000A的存储单元的物理地址是3017AH。3.在8086MPU中,一个字节表示8位二进制数,一个字表示16位二进制数。4.段的起始地址放在段寄存器中,有4个段寄存器,分别是CS,DS,SS和ES,段寄存器的长度为16位。5.8086/8088CPU复位后,程序重新开始执行的物理地址为FFFF0H。6.段地址和偏移地址为3022:001F的存储单元的物理地址是3023FH。7.8086CPU分为两个部分即执行部件.总线接口部件部件。8.8086MPU是典型的16位机,地址总线有20位,数据总线有16位,存储器容量为1MB。9.8086微机的存储器中存放信息如图所示,那么30022H字单元的内容是(D)。A.34ABHB.AB34HC.ABCDHD.CDABH10.程序计数器PC存放的是。(D)A.程序总的指令条数B.程序已执行的指令条数C.程序尚未执行的指令条数D.下一条指令的存储地址11.在8088/8086系统中,已知(DS)=100AH,DS段有一操作数,其偏移地址=0200H,该操作数的物理地址为(D)。A.100A0HB.02000HC.120A0HD.102A0H12.当8088引脚1WR,0RD,0M/IO时,表示CPU当前正在进行(A)操作。A.读存储器B.写存储器C.写IO口D.读IO口13.8086与8088相比,不正确的有(D)。A.相同的内部寄存器B.相同的指令系统C.相同宽度的地址总线D.相同宽度的数据总线14.Reset信号到来后,8086CPU的启动地址为(C)。A.0000HB.FFFFFHC.FFFF0HD.0FFFFH15.一个基本的总线周期由(B)个时钟周期组成。A.2B.4C.8D.1616.名词解释:1.ALU算数逻辑单元2.MDR存储器数据寄存器3.RAM随机存储器4.总线总线是计算机系统各部件之间传递公共信息的一簇导线5.IR指令寄存器6.CU控制单元7.MAR存储器地址寄存器8.存储容量存储器能够存放的二进制数的总位数9.ROM只读存储器10.PC程序计数器11.ID指令译码器第3章1.MOVAX,[BX+SI]的源操作数是基址变址寻址方式。2.堆栈是按照先进后出原则组织的一片连续的存储区域。3.FLAGS寄存器中有3位控制状态位。4.LOOPNZA1指令只有当ZF=0且(CX)不等于0时,才能继续循环。5.JMPDWORDPTR[DI]是段间间接转移。6.若(AL)=0FEH,(BL)=11H,执行MULBL后(AX)=10DEH,标志位CF和OF分别为CF=OF=1。7.能够实现将BL寄存器中的内容最低4位取反,最高4位维持不变的一条指令是XORBL,0FH。8.执行段内近转移指令后2000:0100E91234JMPA1,A1的地址为3512。9.MOVSI,OFFSETA1是立即寻址寻址方式。10.假设(SS)=3000H,(SP)=1000H,执行PUSHAX指令后,栈顶的物理地址是30FFEH。11.(BH)=65H,(BL)=76H,执行ADDBH,BL指令后,(BH)=DBHOF=0。12.A2DB10DUP(2,3)语句执行后共占有20字节存储单元。13.能够实现将BL寄存器中的内容最低4位取反,最高4位维持不变的一条指令是XORBL,0FH。14.指令由操作码和操作数两部分组成。15.交换寄存器SI,DI的内容,正确的程序段是(AD)。A.PUSHSIB.PUSHSIPUSHDIPUSHDIPOPSIPOPDIPOPDIPOPSIC.MOVAX,SID.MOVAX,SIMOVSI,DIMOVBX,DIMOVDI,AXXCHGBX,AX16.假定(SS)=2000H,(SP)=0100H,(AX)=2107H,执行指令PUSHAX后,存放数据21H的物理地址是(D)。A.20102HB.20101HC.200FEHD.200FFH17.INC指令不影响(B)标志。A.OFB.CFC.SFD.ZF18.将累加器AX的内容清零的错误指令是(D)。A.ANDAX,0B.XORAX,AXC.SUBAX,AXD.CMPAX,AX19.实现将AL寄存器中的低4位置1的指令为(B)。A.ANDAL,0FHB.ORAL,0FHC.TESTAL,0FHD.XORAL,0FH20.运算结束后,ZF=0,表示______。(C)A.运算结果为正数B.运算结果为负数C.运算结果不为零D.运算结果为零21.指令MOVBL,’B’的寻址方式为(D)。A.寄存器寻址B.直接寻址C.间接寻址D.立即寻址22.在串操作指令中,下列描述不正确的是(B)。A.REPMOVSBB.REPSCASBC.REPECMPSBD.REPLODSB23.含有立即数的指令中,该立即数被存放在(B)。A.累加器中B.指令操作码后的内存单元中C.指令操作码前的内存单元中D.由该立即数所指定的内存单元中24.LOOP指令执行时,隐含计数器是(C)A.SPB.BXC.CXD.DI25.什么是寻址方式?说出下列指令中源操作数的寻址方式。寻址方式:寻找指令和操作数的方法称为寻址方式。MOVAX,BX寄存器寻址MOVAH,02H立即寻址MOVDX,[1800H]直接寻址MOVAL,[BX]寄存器间接寻址第4章1.汇编语言的源程序语句可以分为:指令语句,伪指令语句,宏指令语句。2.指示语句在汇编时由编译程序执行,而不被翻译成机器语言。1.汇编语言源程序文件的扩展名为(C)。A.exeB.docC.asmD.txt3.阅读程序XORCX,CXA3:ANDAX,AXJZA1SHLAX,1JNCA2INCCXA2:JMPA3A1:HLT问:该程序段完成统计AX中1的个数功能。4.设AX=1234H,BX=5678H,SS=3000H,SP=1000H。执行下面指令PUSHAXPUSHBXPOPAXPOPBX试问(SP)=1000H。5.TABLEDW10H,20H,30H,40H,50HENTRYDW3……………MOVBX,OFFSETTABLEADDBX,ENTRYMOVAX,[BX]程序执行后AX的内容是3000H。6.试编一程序,求三个带符号数据中的最大值,并将最大值存入MAX单元中,设三个带符号数分别在三个变量X,Y,Z中存储。要求写出完整程序框架。解:DATASSEGMENTXDB5YDB-2ZDB0MAXDB?DATASENDSCODESSEGMENTASSUMECS:CODES,DS:DATASSTART:MOVAX,DATASMOVDS,AXMOVAL,XMOVBL,YCMPAL,BLJGL1MOVAL,BLL1:MOVBL,ZCMPAL,BLJGL2MOVAL,BLL2:MOVMAX,ALMOVAH,4CHINT21HCODESENDSENDSTART7.在字符串S中查找逗号字符(ASCII码位2CH),找到显示Y,否则显示N。解DATESSEGMENTSDB“E,4555@!,”CNTEQU$-SDATESENDSCODESSEGMENTASSUMECS:CODES,DS:DATASSTART:MOVAX,DATASMOVDS,AXMOVBX,OFFSETSMOVCX,CNTL1:MOVAL,[BX]CMPAL,2CHJZL2INCBXDECCXJNZL1MOVDL,’N’MOVAH,02HINT21HJMPL3L2:MOVDL,’Y’MOVAH,02HINT21HL3:MOVAH,4CHINT21HCODESENDSENDSTART8.统计数据块中正数和负数个数(设有7个数,分别为-23,57,82,-27,-19,0,-8),要求写出完整程序框架。DATASSEGMENTBUFDB-23,57,82,-27,-19,0,-8CNTEQU$-BUFZDB0FDB0DATASENDSCODESSEGMENTASSUMECS:CODES,DS:DATASSTART:MOVAX,DATASMOVDS,AXMOVCX,CNTMOVBX,OFFSETBUF;L1:MOVAL,[BX]CMPAL,0JGL2;JLL3;JMPNEXTL2:INCZJMPNEXTL3:INCF;JMPNEXTNEXT:INCBXDECCXJNZL1MOVAH,4CHINT21HCODESENDSENDSTART9.编写程序,实现下列函数。5X0Y=0X=0-5X0MOVAL,XCMPAL,0JGEL1MOVAL,-5JMPNEXTL1:JGL2MOVAL,0JMPNEXTL2:MOVAL,5NEXT:MOVY,ALMOVAH,4CHINT21H10.编程实现键盘输入的小写字母转换成大写字母并在显示器显示出来。(要求完整程序)CODESEGMENTASSUMECS:CODESTART:MOVAL,01HINT21HCOMPAL,‘a’JBEXITCMPAL,‘z’JAEXITSUBAL,20HMOVDL,ALMOVAH,02HINT21HEXIT:MOVAH,4CHINT21HCODEENDSENDSTART11.编写完整程序,统计数据段中以变量BUFFER为起始地址50个存储单元中的有符号数,负数与正数的个数,将统计出来的负数个数送到DL寄存器中,正数的个数送到DH寄存器中。DATASSEGMENTBUFFERDB50DUP(?)DATASENDSCODESSEGMENTASSUMECS:CODES,DS:DATASSTART:MOVAX,DATASMOVDS,AXXORDX,DXLEASI,BUFFERMOVCX,50L1:MOVAL,[SI]CMPAL,0JGL2JLL3JMPL4L2:INCDHJMPL4L3:INCDLJMPL4L4:INCSIDECCXLOOPL1MOVAH,4CHINT21HCODESENDENDSTART第5章1.用2k×4位的存储芯片,组成16k×8位的存储器,要用16片存储芯片。2.系统总线可以分为地址总线,数据总线和控制总线。3.4K4位的存储芯片分别有多少条地址线和数据线?(C)A.4,4B.4,12C.12,4D.12,124.可以写入,但一旦写入.不可擦除的只读存储器是以下哪个?(B)A.ROMB.PROMC.EPROMD.EEPROM5.16K8位的存储芯片分别有多少条地址线和数据线?(A)A.14,8B.12,8C.14,3D.12,36.可用电擦除的的只读存储器是______。(D)A.ROMB.PROMC.EPROMD.EEPROM7.用EPROM2716(2K×8位)为8088CPU设计一个16KB的ROM存储器。问:(1)共需多少块芯片?(2)画出存储器与8088CPU的连接图。(3)写出存储范围解(1)片882816KK(2)OECEOECEEPROM(1)CEEPROM(2)CEOEEPROM(3)CEOEEPROM(4)D7~D0A10~A0RDA11A12A13ABC74LS138G2AG2BG1Y0Y1Y2Y3Y4Y5Y6Y7CEOEEPROM(5)CEOEEPROM(6)CEOEEPROM(7)CEOEEPROM(8)IO/MA19A18A16&A17(3)EPROM1:F0000H~F1FFFH;EPROM2:F2000H~F3FFFH;EPROM3:F4000H~F5FFFH;EPROM4:F6000H~F7FFFH;EPROM5:F8000H~F9FFFH;EPROM