• / 27
  • 下载费用:5 金币  

【可编辑】北京交通大学《微机原理与接口技术》作业答案.doc

关 键 词:
可编辑 微机原理与接口技术 编辑 北京 交通大学 微机 原理 接口 技术 作业 答案
资源描述:
目录《微机原理与接口技术》第一章作业2一、书上P22作业题 2、3、72《微机原理与接口技术》第二章作业2一、书上P59作业题 2、5、6、9、142《微机原理与接口技术》第三章作业3一、书上P95作业题 4、5、6、7、10、11、12、13、14、15、16、17、18、22、274《微机原理与接口技术》第四章作业8一、课本P155 8、12、13、148《微机原理与接口技术》第五章作业10一、作业P180 2、5、7、8、9、1011《微机原理与接口技术》第六章作业13一、P207: 1,3,5,10,14。18,19,2013《微机原理与接口技术》第七章作业(一)17一、P268: 3, 6 , 7, 10 , 11 , 1217《微机原理与接口技术》第七章作业(二)20一、P268: 15 , 16 , 19, 21,2520《微机原理与接口技术》第八章作业24一、P292 6、724《微机原理与接口技术》第一章作业一、书上P22作业题 2、3、72.完成下列数制之间的转换。(1)01011100B=92D(3)135D=10000111B(5)10110010B=262Q=B2H3.组合型BCD码和非组合型BCD码有什么区别?写出十进制数254的组合型BCD数和非组合型BCD数。答:组合型BCD码的储存格式用一个字节存放2位BCD码,高4位表示十进制的十位数,低4位表示十进制的个位数,数值表示范围为0~99;非组合型的储存格式是用一个字节的低4位存放1位BCD码,高四位可以为0或任意数,数值表示范围为0~9。254D的组合型BCD码:001001010100254D的非组合型BCD码:00000010 00000101 000001007.计算机中为什么采用补码的形式储存数据?当计算机的字长n=16时,补码的数据表示范围是多少?答:是为了便于进行加减运算,简化机器硬件结构。当n=16时,补码表示数值的范围是+32767~-32768。《微机原理与接口技术》第二章作业一、书上P59作业题 2、5、6、9、142、8086标志寄存器包含哪些状态标志位?试说明各状态标志位的作用.答:6个状态标志位:CF(Carry Flag)——进位标志位。当执行一个加法(或减法)运算,使最高位产生进位(或借位)时,CF为1;否则为0。PF(Parity Flag)——奇偶标志位。该标志位反映运算结果中1的个数是偶数还是奇数。当指令执行结果的低8位中含有偶数个1时,PF=1;否则PF=0。AF(Auxiliary carry Flag)——辅助进位标志位。当执行一个加法(或减法)运算,使结果的低4位向高4位有进位(或借位)时,AF=1;否则AF=0。ZF(Zero Flag)——零标志位。若当前的运算结果为零,ZF=1;否则ZF=0。SF(Sign Flag)——符号标志位。它和运算结果的最高位相同。OF(Overflow Flag)——溢出标志位。当补码运算有溢出时,OF=1;否则OF=0。3个控制标志位:DF(Direction Flag)——方向标志位。它用以指定字符串处理时的方向,当该位置“1”时,字符串以递减顺序处理,即地址以从高到低顺序递减。反之,则以递增顺序处理。IF(Interrupt enable Flag)——中断允许标志位。它用来控制8086是否允许接收外部中断请求。若IF=1,8086能响应外部中断,反之则不响应外部中断。TF(Trap Flag)——跟踪标志位。它是为调试程序而设定的陷阱控制位。当该位置“1”时,8086 CPU处于单步状态,此时CPU每执行完一条指令就自动产生一次内部中断。当该位复位后,CPU恢复正常工作。5、逻辑地址与物理地址有什么区别?如何将逻辑地址转换为物理地址? 答:物理地址是真实存在的唯一地址,指的是存储器中各个单元的单元号;逻辑地址是思维性的表示,由段地址和偏移地址联合表示的地址类型叫逻辑地址。物理地址=段地址×10H+偏移地址。6、写出下列逻辑地址的段基址、偏移地址和物理地址。(1)2314H:0035H (2)1FD0H:000AH 答:(1)段基址:2314H偏移地址:0035H物理地址:23175H。 (2)段基址:1FD0H偏移地址:000AH物理地址:1FD0AH。 9、设一个16字的数据区,它的起始地址为70A0H:DDF6H(段基址:偏移地址),求这个数据区的首字单元和末字单元的物理地址。答:首字:70A0*10H+DDF6H=7E7F6H末字:7E7F6H+(16-1)*2=7E814H。 14、80486CPU存储器最大可寻址空间是多少?虚拟存储空间是多少?两者有何区别? 答:最大可寻址空间是4GB,虚拟存储空间是64TB。可寻址空间是实地址,虚拟存储空间是外部存储管理器。《微机原理与接口技术》第三章作业一、书上P95作业题 4、5、6、7、10、11、12、13、14、15、16、17、18、22、274、指出下列指令中的源操作数和目标操作数的寻址方式。(1)MOV BX,1000H源操作数:立即寻址;目标操作数:寄存器寻址(2)MOV AL,[BX] 源操作数:寄存器间接寻址;目标操作数:寄存器寻址(3)MOV CX,[BP+10H] 源操作数:寄存器相对寻址;目标操作数:寄存器寻址(4)MOV AL,ES:[BX+SI] 源操作数:基址加变址寻址;目标操作数:寄存器寻址(5)MOV [DI+1000H],BX 源操作数:寄存器寻址;目标操作数:寄存器相对寻址 (6)MOV [1000H],CX 源操作数:寄存器寻址;目标操作数:直接寻址 (7)MOV AL,[BX+DI+1234H] 源操作数:寄存器相对寻址;目标操作数:寄存器寻址(8)MOV AL,1000H[BX+SI] 源操作数:寄存器相对寻址;目标操作数:寄存器寻址 (9)MOV [EBX+ESI+2010H],DX 源操作数:寄存器寻址;目标操作数:带位移的基址加变址寻址(10)MOV AX,0100H[EBX+ESI*4] 源操作数:基址加比例变址寻址;目标操作数:寄存器寻址5、设(DS)=2000H、(ES)=2100H、(SS)=1500H、(BX)=0100H、(BP)=0040H、(SI)=00A0H、(DI)=0120H,在指令MOV AX,src中,求用下列表示源操作数src的有效地址EA和物理地址PA各是多少?(1)100H[BX] EA=(100H+0100H)=0200H ; PA=2000*10H+0200H=20200H (2)ES:[BX+DI] EA=0100H+0120H=0220H ;PA=2100*10H+0220H=21220H (3)[BP] EA=0040H ; PA=1500*10H+0040H=15040H(4)ES:[BX+10H] EA=0100H+0010H=0110H ;PA=21000H+0110H=21110H (5) [BP+SI] EA=0040H+00A0H=00E0H ; PA=1500*10H+OOEOH=150E0H (6) [1000H] EA=1000H ; PA=2000*10H+1000H=21000H(7) ES:[DI] EA=0120H ; PA=2100*10H+0120H=21120H(8) 1050H[BX+SI] EA=1050H+0100H+00A0H=11F0H ; PA=2000*10H+11F0H=211F0H(9) DS:10C0H[BP+SI] EA=10C0H+0040H+00A0H=11A0H ; PA=2000*10H+11A0H=211A0H(10) [BX+DI] EA=0100H+0120H=0220H ; PA=2000*10H+0220H=20220H 6、指出下列指令中的错误,并改正。(1)MOV BL,30A0H 操作数不匹配改:MOV BX,30A0H(2)MOV 0010H,AL立即数不可以作为目标操作数改:MOV AX,0010H (3)XCHG AL,BX操作数类型不匹配改:XCHG AX,BX(4)MOV [AX],3456H立即数送入存储器需要说明改:MOV WORDPTR [AX],3456H (5)PUSH AL堆栈以字为操作单元改:PUSH AX(6)POP CS POP不可以用CS为目标操作数改:POP AX (7)MOV DS,1000H立即数不能直接送入段寄存器改:MOV AX,1000H MOV DS,AX(8)MOV [BX],[1000H]存储器不可以相互传送改:MOV AX,[1000H] MOV [BX],AX(9)LDS (BX),[1000H]LDS使用时期目标为16位通用寄存器改:LDS BX,[1000H] (10)LEA BX,CX LEA源操作数为存储器改:LEA BX,[CX]7、已知(AX)=4A0BH,[1020H]单元中的内容为260FH,写出下列每条指令单独执行后的结果。(1)MOV AX,1020H ; (AX)=1020H (2)XCHG AX, [1020H] ; (AX)=260FH (3)MOV AX,[1020H] ; (AX)=260FH(4)LEA AX,[1020H] ; (AX)=1020H10、设一个堆栈段共有100H个字节单元,堆栈的起始地址为1250H:0000H,若在堆栈中存有5个字数据,问:(1)栈顶的物理地址多少?栈底:12600H(2)栈底的物理地址是多少? 栈顶:12600-A=125F6H(3)当前SS和SP的内容是多少?SS:[1250H:0000H ]SP: [1250H:00F6H ](4)若弹出两个数据,SP的内容是多少? SP:[1250H:00FAH ]11、编程完成下列程序段,根据运算结果置标志位OF、SF、ZF、AF、PF、CF,并分析程序执行结果是否正确?为什么?(设字长n=8) (1)30+64(2)122-64 (3)96+52(4)-68+(-72) 答:(1) MOV AL,30 MOV BL,64 ADD AL,BL结果:0101111O F=0 SF=0 ZF=0 AF=0 PF=1 CF=0 (2) MOV AL,122 MOV BL,64 SUB AL,BL结果:00111010 OF=0 SF=0 ZF=0 AF=0 PF=1 CF=0 (3) MOV AL,96 MOV BL,52 ADD AL,BL结果:10010100 F=0 SF=0 ZF=0 AF=0 PF=1 CF=0 (4) MOV AL,-68 MOV BL,-72 ADD AL,BL结果:01110100 OF=1 SF=0 ZF=0 AF=1 PF=1 CF=1 17、判断下列指令格式的对与错,并解释错在哪里。 (1)ADD 25H,AX (×)目标操作数不可以为立即数 (2)INC BX,1 (×)INC只有目标操作数(3)MUL AL,BL (×)乘法指令目标操作数是隐含的 (4)SUBB AL,3 (×)减法指令是SUB (5)DAA AL (×)DAA后无操作数(6)NEG CX,0 (×)NEG后只有目标操作数 (7)CMP [BX],1000H[BX+SI] (√)18、设(AL)=10010010B,将AL的内容算术右移2位,AL的内容和CF是多少?再将AL的内容逻辑右移2位,AL的内容和CF是多少?算术右移2位 AL:11100100 CF:1逻辑右移2位 AL:00100100 CF:122、写出下列程序段执行后的结果。 MOV CL,4 MOV AL,87 MOV DL,AL AND AL,0FH OR AL,30H SHR DL,CL OR DL,30H (AL)=37H,(DL)= 35H27、试用CMP指令和条件转移指令实现下列判断 (1)AX和CX中的内容为无符号数:若(AX)>(CX)则转至BIGGER符号执行;若(AX)<(CX)则转至LESS符号执行。 CMP AX,CX JA BIGGER JB LESS(2)BX和DX中的内容为无符号数:若(BX)>(DX)则转至BIGGER符号执行;若(BX)<(DX)则转至LESS符号执行。 CMP BX,DX JG BIGGER JL LESS《微机原理与接口技术》第四章作业一、课本P155 8、12、13、148、按下列的要求写出段定义格式。(1)数据段的位置从0E000H开始,在该段中定义的5个字节数据,3个字数据,2双字数据,要求字节数据从偏移地址0000H开始,字数据从偏移地址0010H开始,双字数据从偏移地址0020H开始。(2)堆栈段定义100个字节(3)代码段的开始位置给有关段寄存器赋值,在程序结束时能够返回DOS。 DATA SEGMENTORG 0000HD1 DB 00H,01H,02H,03H,04H ORG 0010HD2 DW 0000H,0010H,0020H ORG 0020HD3 DD 3 DUP(?)DATA ENDSSTACK SEGMENT STACK DB 100 DUP(?)STACK ENDSCODE SEGMENT CODE ASSUME CS:CODE,DS:DATA START :……MOV AH,4CHINT 21HCODE ENDS ENDS START12、定义数据段如下,画出数据存储示意图,并说明变量X1和X2所对应的逻辑地址各是多少?. . . 16H21H…41H42H31H32H43H44H10A00HDATA SEGMENT AT 10A0H ORG 0010H10A10H X1 DB 22,33, ORG $+ 0020HX2 DB ‘AB12CD’ 10A32H DATA ENDSX1的逻辑地址:10A0H:0010H X2的逻辑地址:10A0H:0032H 13、定义数据段如下,写出执行以下指令后的结果。 DATA SEGMENT    DA1  DW  2437H ,14A2H    DA2  DB  ‘ABCD’    DA3  DD   10  DUP (?) DATA ENDS (1)MOV  BX,DA1     ;(BX)=2437H  (2)MOV  SI,OFFSET  DA1  ;(SI)=0000H  (3)MOV  AL, TYPE  DA1   ;(AL)=2   (4)MOV AL,[DA2+02H]  ;(AL)=‘C’=43H  (5)MOV AL,LENGTH DA3 ;(AL)=10  (6)MOV AL,SIZE  DA3 ;(AL)=10 14、程序中数据段定义的数据如下:DATA SEGMENT NAMES DB‘GOOD MORNING!’       DW 2050H,78H,3080H DATA ENDS 请指出下列指令序列执行后累加器中的结果是多少? (1) MOV BX,OFFSET NAMES MOV AL,[BX+03H] (2) MOV BX,12 MOV SI,3 MOV AX,NAMES[BX+SI] (3) MOV BX,12 MOV SI,3 LEA AX,NAMES[BX+SI] 答:(1)44H (2)78H (3)0FH 《微机原理与接口技术》第五章作业一、作业P180 2、5、7、8、9、102、半导体储存器的主要性能指标有哪些?1、存储容量 2、存取速度 3、可靠性 4、功耗5、储存器芯片的片选信号的产生有哪几种方法?各有什么特点?1、线选法:用除片内寻址外的高位地址线不经过译码,直接分别接至各个存储芯片的片选端来区别各芯片的地址优点:连接简单,无需专门的译码电路缺点:不能充分利用系统的存储器空间,地址空间浪费大。 2、部分译码法:只对高位地址线中某几位地址经译码器译码优点:高位地址的部分地址线经过译码产生片选信号。缺点:存在地址重叠现象。 3、全译码法:存储芯片内寻址以外的系统的全部高位地址线都参与译码产生片选信号。、优点:芯片的地址范围不仅是唯一确定的,而且是连续的。缺点:译码电路较复杂,连线也较多7、若用1024*1b的RAM 芯片组成16K*8b的存储器, 需要多少芯片? 在地址线中有多少位参与片内寻址? 多少位用做芯片组选择信号?(设系统地址总线为16位)1024K*1b=1K*1b1K*8b/1K*1b=816K*8b/1K*8b=168*16=128需要128片;1024=2^10,需要10位参与片内寻址16=2^4, 需要4位做芯片组选择信号8、 试用4K*8b的EPROM2732和8K*8b的SRAM6264, 以及74LS138译码器, 构成一个8KB 的ROM,32KB 的RAM 存储系统, 要求设计存储器扩展电路, 并指出每片存储芯片的地址范围. 9、用EPROM2764和SRAM6264各一片组成存储器,其地址范围为FC000~FFFFFH,试画出存储器与CPU 的连接图和片选信号译码电路(CPU 地址线20位,数据线8位)。10、现有存储芯片:2K*1b的ROM 和4K*1b的 RAM,若用它们组成容量为16KB 的存储器, 前4KB 为ROM, 后12KB 为RAM, 问各种存储芯片分别用多少片? 4K*8b/4K*1b=84K*1b/2K*1b=28*2=16需要16片2K*1b的ROM12K*8b/12K*1b=812K*1b/4K*1b=38*3=24需要24片4K*1b的 RAM《微机原理与接口技术》第六章作业一、P207: 1,3,5,10,14。18,19,201、什么叫中断?中断系统的主要功能有哪些?中断:是指CPU在执行程序的过程中,由于某种外部或内部事件的作用,强迫CPU停止当前正在执行的程序,转去为该事件服务,待事件服务结束后,能自动地返回到被中断的程序中继续执行。中断系统的功能: 1、设置中断源 2、中断源识别 3、中断源判优 4、中断与返回3、CPU 响应中断时的处理过程是什么?在各个处理环节主要完成哪些操作?过程是:中断请求、中断响应、中断处理和中断返回。(1)中断请求:中断源需要进行中断服务时,由硬件产生一个中断信号INTR 发给CPU 且保持到CPU 响应。(2)中断响应:CPU 在当前指令执行结束后采样查询INTR ,若中断请求信号有效且允许响应INTR 中断(IF=1),则向请求设备送回低电平有效的中断响应信号INTR , 自此系统自动进入中断响应周期,并由硬件自动完成内容入栈,清除TF 和IF标志、断点入栈,取中断服务程序的入口地址等一系列操作,继而转去执行中断服务程序。(3)中断处理:执行中断的主体部分。不同的中断请求源,其中断处理的内容是不同的。需要根据中断请求源所要完成的功能,编写相应的中断服务程序存入内存。等待中断响应后调用执行。(4)中断返回:又中断服务程序中的中断返回指令IRET 完成。执行该指令时,将压入对战的断点和标志位弹出,使CPU 转向被中断的现行程序中继续执行。5、中断允许标志IF的作用是什么? 可以用什么指令对它置1或清0。IF用来控制INTR和单步中断。IF=1允许中断 IF=0不允许中断 STI:IF=1 CLI:IF=010、中断向量表用来存放什么内容?它占用多大的存储空间?存放在内存的哪个区域?可以用什么方法写入或者读取中断向量表的内容?中断向量表存放中断向量,即中断服务程序的段基址+偏移地址。中断向量表占1KB 内存RAM区,地址范围:000H—3FFH。写入方法: 1、用传送指令直接装入 2、DOS功能调用:INT 21H (AH)=25H (AL)=中断类型号 (DS:DX)=中断服务程序的入口地址 读出方法: 1、用传送指令直接读 2、DOS功能调用:INT 21H (AH)=35H (AL)=中断类型号 出口参数:(ES:BX)=中断服务程序的入口地址14、8259A 有哪几种中断结束方式? 它们适合应用在什么场合? 1、自动结束方式自动结束方式是利用中断响应信号INTA的第二个负脉冲的后沿将ISR中的中断服务标志位清除,是在中断过程中完成的,并非中断服务程序的真正结束。只适合适用在无多级中断嵌套的场合。 2、普通结束方式 通过向8259A传送一个普通EOI命令来清除ISR中当前优先权级别最高位,适合使用在完全嵌套方式下的中断结束。 3、特殊结束方式通过向8259A传送一个普通EOI命令来清除ISR中的指定位。适合使用在完全嵌套方式下的中断结束,更适合用于嵌套结构有可能遭到破坏的中断结束。18、某系统使用一片8259A管理中断,中断请求由IR2 引人,采用电平触发、完全嵌套、普通EOI结束方式,中断类型号为42H 端口地址为80H 和81H,试画出8259A 与CPU的硬件连接图,井编写初始化程序。初始化程序: MOV AL,00011011B ;电平触发、单片、写ICW4 OUT 80H,AL ;写ICW1 MOV AL,01000000B ;中断类型号40H,则IR2 为42H OUT 81H,AL ;写ICW2 MOV AL,00000001B ;完全嵌套、非自动结束、8086模式 OUT 81H,AL ;写ICW419、某系统使用两片8259A 管理中断,从片的INT 连接到主片的IR2请求输入端。设主片工作于边沿触发、特殊完全嵌套、非自动结束和非缓冲方式,中断类型号为70H ,端口地址为80H 和81H ;从片工作与边沿触发、完全嵌套、非自动结束和非缓冲方式,中断类型号为40H ,端口地址为20H 和21H 。要求:(1)画出主、从片级联图(2)编写主、从片初始化程序主片初始化程序:MOV AL,00010001B ;边沿触发、主片、写ICW4 OUT 80H,AL ;写ICW1 MOV AL,01110000B ;中断类型号70H,则IR2 为42H OUT 81H,AL ;写ICW2MOV AL,00000100 OUT 81H,AL ;写ICW3 MOV AL,00010001B ;完全嵌套、非自动结束、8086模式OUT 81H,AL ;写ICW4从片初始化程序:MOV AL,00010001B ;边沿触发、从片、写ICW4 OUT 20H,AL ;写ICW1 MOV AL,01000000B ;中断类型号40H,则IR2 为42H OUT 21H,AL ;写ICW2 MOV AL,00000010 OUT 21H,AL ;写ICW3 MOV AL,00000001B ;完全嵌套、非自动结束、8086模式OUT 21H,AL ;写ICW420、某系统由8259A 的IR2引入外设中断请求(跳变信号有效),要求当CPU 响应IR2请求时,输出显示字符串“****”,并中断10次退出,试编写主程序和中断服务程序。 程序:DATA SEGMENTMESS DB '*****',OAH,ODH,'$'INTA00 EQU 0020HINTA01 EQU 0021HDATA ENDSSTACK SEGMENT STACKDB 100H DUP (?)STACK ENDSCODE SEGMENTASSUME CS :CODE ,DS :DATA ,SS :STACKMAIN :MOV AX ,DATAMOV DS ,AXMOV DX ,INTA00 ;8259A 初始化MOV AL ,13H ;写ICW1OUT DX ,ALMOV DX ,INTA01MOV AL ,08H ;写ICW2OUT DX ,ALMOV AL ,01H ;写ICW4OUT DX ,ALPUSH DSMOV AX ,SEG INT-P ;设置中断矢量MOV DS ,AXMOV DX ,OFFSET INT-PMOV AL ,0AHMOV AH ,25HPOP DSMOV AL ,0FBH ;写中断屏蔽字OCW1 OUT DX ,ALMOV DX ,INTA00MOV AL ,20H ;写中断结束方式OCW2 OUT DX ,ALMOV BX,10WAIT1: STI ;开中断JMP WAIT1 ;等待中断INT-P :MOV AX ,DATA ;中断服务程序入口MOV DS ,AXMOV DX ,OFFSET MESS ;输出指定字符串MOV AH ,09HINT 21HMOV DX ,INTA00 ;写OCW2,送中断结束命令EOI MOV AL ,20HOUT DX ,ALDEC BX ;控制10次循环JNZ NEXTMOV DX ,INTA01 ;读屏蔽寄存器IMRIN AL ,DXOR AL ,04H ;屏蔽IR2请求OUT DX ,ALSTI ;开中断MOV AX ,4C00H ;返回操作系统INT 21HNEXT : IRET ;中断返回CODE : ENDSEND MAIN《微机原理与接口技术》第七章作业(一)一、P268: 3, 6 , 7, 10 , 11 , 123、CPU与IO接口设备数据传送的控制方式有哪几种?它们各有何特点?(1)查询方式:不需要额外的硬件支持,但由于CPU与外设工作的不同步,致使CPU利用率低,适用于工作不太繁忙的系统中。 (2)中断方式:CPU与外部设备并行工作(3)DMA方式:数据传送过程中,由DMA控制器参与工作,不需要CPU的干预,对批量数据传送效率高。6、设8255A 的A 口工作于方式1输出,B 口工作于方式0输入,试编写初始化程序(设端口地址为40H~43H)程序:MOV DX ,43HMOV AL ,10100010OUT DX,AL7、使用8255A 作为开关和LED 指示灯电路的接口. 要求8255A 的A 口连接8个开关,B 口连接8个LED 指示灯,将A 口的开关状态读入,然后送至B 口控制指示灯亮、灭。试画出接口电路设计图,并编写程序实现。程序:设8255的地址:0FFE0H~0FFE3H DATA SEGMENTDB 100H DUP(?) DATA ENDSCODE SEGMENTASSUME CS:CODE ,DS DATASTART :MOV AX,DATA MOV DS,AXMOV AL,10010000 ; A口方式0输入B 口方式0输出 MOV DX,0FFE3H OUT DX,ALMOV DX, 0FFE0H IN AL,DX ; 读取A 口开关状态 INC DX NOT AL OUT DX,AL ;输出B 口驱动LED ,开关闭合则LED 亮 RETCODE ENDSEND START10、利用8254的通道1,产生500Hz 的方波信号。设输入时钟频率CKL1=2.5MHz,端口地址为FFA0H~FFA3H,试编写初始化程序。端口地址:FFA0H-FFA3H计数器1的控制字:01110110B=76H 计数常数=2.5M/500=5000初始化程序:MOV AL,76HMOV DX,0FFA3HOUT DX,ALMOV AX,5000MOV DX,0FFA1HOUT DX,ALMOV AL,AH ; 写入计数器1的低字节OUT DX,AL ; 写入计数器1的高字节11、某系统使用8254的通道0作为计数器,记满1000,向CPU 发中断请求,试编写初始化程序(端口地址自设)。设8254端口地址:40H-43H计数器0的控制字:00110000B=30H 计数常数=1000初始化程序:MOV AL,30HOUT 43H,ALMOV AX,1000OUT 40H,ALMOV AL,AH ; 写入计数器0的低字节OUT 40H,AL ; 写入计数器0的高字节12、采用8254的通道0产生周期为10ms 的方波信号,设输入时钟频率为100kHz ,8254的端口地址为38H-3BH, 试编写初始化程序。8254端口地址:38H-3BH计数器0的控制字:00110110B=36H 计数常数=100K*10ms=1000初始化程序:MOV AL,36HOUT 3BH,ALMOV AX,1000OUT 38H,AL ; 写入计数器0的低字节MOV AL,AHOUT 38H,AL ; 写入计数器0的高字节《微机原理与接口技术》第七章作业(二)一、P268: 15 , 16 , 19, 21,2515、什么是波特率?假设异步传输的一帧信息由1为起始位,7位数据位、1为校验位和1位停止位构成,传送的波特率为9600,则每秒钟能传输字符的个数是多少?波特率是指数据传送的速率,含义是指每秒钟传二进制数的位数,单位用bps 或波特表示每秒可传送的字符个数。9600/(1+7+1+1)=96016、一个异步串行发送器,发送的字符格式为:1位起始位、7位数据位、1位奇偶校验位和2位停止位,若每秒传送100个字符,则其波特率为多少?100*(1+7+1+2)=1100bps19、设某系统使用一片8250进行串行通信,要求波特率为2400,8位数据位,2位停止位,偶校验,对接收缓冲器满开中断,试编写初始化程序。设8250端口地址:3F8H-3FEH XTAL1=1.8432MHz,BAUD=2400除数寄存器:1.8432M/(2400*16)=48=30H 3F8H线路控制寄存器:10011111B=1FH 3FBH中断允许寄存器:00000001B=01H 3F9H初始化程序:MOV DX,3FBHMOV AL,80HOUT DX,AL ; 置线路控制寄存器DLAB=1MOV AX,30HOUT DX,ALINC DXMOV AL,AH; 除数寄存器低8位OUT DX,ALMOV DX,3FBH MOV AL,1FH OUT DX,AL;除数寄存器高8位 MOV DX,3FCH MOV AL,03H OUT DX,AL ;MODEMMOV DX,3F9HMOV AL,01H OUT DX,AL ; 中断允许21、设计一个应用系统,要求:8255A 的A 口输入8个开关信息,并通过8250以串行的方式循环,将开关信息发送出去。已知:8255的端口地址为100H-103H ,8250输入的基准时钟频率为1.8432MHz ,传输波特率为2400,数据长度为8位,2位停止位,奇校验、屏蔽全部中断,端口地址为108H~10EH,采用查询方式传送。要求:(1)设计该系统的硬件连接电路(包括地址译码电路);(2)编写各芯片的初始化程序(3)编写完成上述功能的应用程序。(1)(2)8255初始化程序: MOV DX ,103H MOV AL ,10010000B ;A 口输入 MOV DX ,AL 8250初始化程序:8250端口地址:108H-10EH XTAL1=1.8432MHz,BAUD=2400 除数寄存器=1.8432M/(2400*16)=48=30H 108H线路控制寄存器:00001111B=0FH 10BH中断允许寄存器:00000000B=00H 109H (3)程序:DATA SEGMENT A DB ? DATA ENDSSTACK1 SEGMENT PARA STACK DW 100 DUP(?) STACK1 ENDS CODE SEGMENT ASSUME CS: CODE, DS: DATA, SS:STACK1START:MOV AX,DATAMOV DS,AXMOV DX ,103H MOV AL ,10010000B ;A 口输入 MOV DX ,ALMOV DX,10BHMOV AL,80HOUT DX,AL ;置线路控制寄存器DLAB=1 MOV DX,108H MOV AL,30H ;1843200 / (2400*16) = 48=30H OUT DX,AL INC DX MOV AL,0 OUT DX,AL ;写除数R高位MOV DX,10BH MOV AL,0FH(00001111B) OUT DX,AL ;写线路控制R MOV DX,10CHMOV AL,03H(00000011B) OUT DX,AL ;写MODEM控制R MOV DX,109H MOV AL,0 OUT DX,AL ;屏蔽全部中断WAIT_FOR: MOV DX, 10DH ;读线路状态寄存器IN AL, DXTEST AL,00100000B ;发送寄存器空否,不空则返回等待JZ WAIT_FOR MOV DX, 100H ;读A口状态IN AL, DX MOV DX, 108H OUT DX, AL ;发送JMP WAIT_FOR MOV AH,4CH INT 21H CODE ENDS END START25、采用8237的通道1控制外设与存储器之间的数据,设该芯片的片选CS 由地址线A15~A4=031H译码提供。试编写初始化程序,把外设中1KB 的数据传送到内存2000H 开始的存储区域,传送完毕停止通道工作。设DREQ1高电平有效,DACK1低电平有效。采用块传输。8237地址:0310H-031FH初始化程序:MOV DX,031DHMOV AL,0OUT DX,AL ;软件复位MOV DX,0312H MOV AL,00H MOV DX,AL ;2000H 写入基地址寄存器MOV AL,20H MOV DX,AL MOV DX,0313H MOV AX,1024 ;计数值写入基字节计数器DEC AX OUT DX,AL MOV AL,AH OUT DX,AL MOV DX,031BH MOV AL,85H ; 写工作方式字:块传送、地址增1、写传送OUT DX,AL ; 写屏蔽字:允许通道1请求MOV DX,031AH MOV AL,01H ; 写命令字OUT DX,AL MOV DX,0318HMOV AL,00H ;DACK1=1 DREQ1=0OUT DX,AL 《微机原理与接口技术》第八章作业一、P292 6、76、有几种方法解决A/D转化器和微机接口中的时间分配问题?各有何特点?答:固定延时等待法,程序查询等待法 ,中断法 (1)固定延时等待法 在向A/D发出启动信号后,先根据所采用的A/D转 换器所需的转换时间进行软件延时等待,延时程序执行完以后,A/D转换过程也已结束,便可读入数据。在这种方式中,为了保险起见,通常延时时间应略大 于A/D转换所需时间。 缺点:占用较多时间,适合于微处理器任务 较少的场合。优点:可靠性高,不占用查询端口。(2)程序查询等待法在微处理器发出A/D转换启动命令后,就不断反复测 试转换结束信号STS的状态,一旦发现STS有效,就 执行输入转换结果数据的指令。接口简单,CPU同样 效率低,且从A/D转换完成到微处理器查询到转换结 束并读取数据,可能会有相当大的时延。(3)中断法当转换完成后,转换结束状态信号STS有效,利用 STS作为中断请求信号,向CPU提出中断申请,当 微处理器响应中断,在中断服务程序中执行转换结 果数据的读入。这种方法CPU可与A/D转换器并行 工作,效率高,硬件接口简单。7、试设计一个CPU和两片DAC0832的接口电路,并编制程序,使之分别输出锯齿波和反锯齿波。DATA SEGMENT DB 100 DUP(?) DATA ENDS CODE SEGMENT ASSUME CS:CODE START:MOV AX,DATA      MOV DS,AX MOV DX,3F3H   ;8255A控制口地址 MOV AL,80H    ;设置8255方式字,PA、PB、      OUT DX,AL     ;PC均为方式0输出      MOV DX,3F2H   ;8255A的C口地址 MOV AL,10H    ;置DAC0832为直通工作方式      OUT DX,AL A1:MOV DX,3F0H    ;8255A口地址      MOV AL,00H      ;输出数据初值 LOP1:OUT DX,AL    ;锯齿波输出INC AL        ;修改数据      NOP      NOP JMP LOP1       ;锯齿波循环  MOV DX,3F1H          ;8255B口地址      MOV AL,0FFH      ;输出数据初值 LOP2:OUT DX,AL    ;反锯齿波输出      DEC AL        ;修改数据      NOP      NOP JMP LOP2       ;反锯齿波循环       JMP A1CODE ENDSEND START
展开阅读全文
  语墨文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
0条评论

还可以输入200字符

暂无评论,赶快抢占沙发吧。

关于本文
本文标题:【可编辑】北京交通大学《微机原理与接口技术》作业答案.doc
链接地址:http://www.wenku38.com/p-60909.html

                                            站长QQ:1002732220      手机号:18710392703    


                                                          copyright@ 2008-2020 语墨网站版权所有

                                                             经营许可证编号:蜀ICP备18034126号

网站客服微信
收起
展开