1.请给出下图中138译码器的所有译码输出引脚对应的地址范围。2.写出下图中138译码器指定引脚译码输出的地址范围。divalign=center3.利用全地址译码将6264芯片接在IA-32的系统总线上,其所占地址范围为0BE000H~0BFFFFH,画出连接电路图。7.下图示例了无条件输入输出接口电路,编程实现当开关闭合时,相应的LED灯将点亮,并调用延时子程序DELAY保持一定时间(假设延时子程序DELAY已经编写,直接调用)。wutiaojianprocmovdx,8000hinal,dxnotaloutdx,alcalldelaywutiaojianendp8.下图示例了无条件输入输出接口电路,编程实现让L7点亮(其它LED灯灭)一段时间后,L0点亮(其它LED灯灭),持续时间可调用延时子程序DELAY。wuprocmovdx,8000hinal,80houtdx,alcalldelayinal,1outdx,alwuendp1.利用扬声器控制原理,编写一个简易乐器程序。P263例题,习题8.7当按下1~8数字键时,分别发出连续的中音1~7和高音i(对应频率依次为524Hz,588Hz,660Hz,698Hz,784Hz,880Hz,988Hz和1048Hz);当按下其他键时暂停发音;当按下ESC键(ASCII码为1BH),程序返回操作系统。;数据段tabledw2277,2138,1808,1709,1522,1356,1208,1139;对应中音1~7和高音i的定时器记数值;代码段moval,0b6h;设置定时器2工作方式out43h,alagain:callreadc;等待按键cmpal,'1';判断是否为数字1~8jbnextcmpal,'8'janextsubal,30h;1~8的ASCII码转换为二进制数subal,1;再减1,将数字1~8变为0~7,以便查表xorah,ahshlax,1;乘以2movbx,ax;记数值表是16位数据,无法采用xlat指令movax,table[bx];取出对应的记数值out42h,al;设置定时器2的记数值moval,ahout42h,alinal,61h;打开扬声器声音oral,03h;使D1D0=PB1PB0=11B,其他位不变out61h,aljmpagain;连续发声,直到按下另一个键next:pushaxinal,61h;不是数字1~8,则关闭扬声器声音andal,0fch;使D1D0=PB1PB0=00b,其他位不变out61h,alpopaxcmpal,1bh;判断是否为ESC键(对应ASCII码1bh)jneagain;不是ESC,继续;否则程序执行结束2.下图是用8255端口B方式0与打印机接口连接示意图及各引脚间时序关系,编程实现该功能。P271例题,习题8.10设端口地址为200H~203H,203H为控制端口!控制字:10000001,B口、C口高4位输出,C口低4位输人Init8255procmovdx,203h;控制端口地址为203Hmoval,10000001b;方式控制字outdx,al;B口方式0输出,口A任意;C口上半部输出、下半部输入moval,00001111b;端口C复位置位控制字outdx,al;使PC7=1,即置STORE*=1Init8255endp3.下图是用8255端口A方式1与打印机接口连接示意图及各引脚间时序关系,编程实现该功能。设端口地址为200H~203H,203H为控制端口!控制字:10100000,A口方式1输出,其余不关心,禁止中断。Init8255procmovdx,203h;控制端口地址为203Hmoval,10100000b;方式控制字outdx,al;A口方式1输出moval,00001100b;C口位控制字使PC6=0,禁止中断outdx,alInit8255endp4.下图是用8255端口B方式1与打印机接口连接示意图及各引脚间时序关系,编程实现该功能。设端口地址为200H~203H,203H为控制端口!movdx,0fffehmoval,84houtdx,almoval,04h;使INTEB(PC2)为0,禁止中断outdx,almovcx,counter;打印字节数送CXmovbx,offsetbuffer;取字符串首地址callprints;调用打印子程序printsprocpushax;保护寄存器pushdxprint1:moval,[bx];取一个数据movdx,0fffahoutdx,al;从端口B输出movdx,0fffchprint2:inal,dxtestal,02h;检测(PC1)为1否?jzprint2incbxloopprint1popdxpopaxretprintsendp5.如图所示,8253的端口地址为90H~93H。要求8253的通道0产生周期为100µs的对称方波,8253的通道1产生周期为1S的对称方波。完成如下任务:1.在该图的基础上画出完成指定功能的线路连接(译码电路的设计可略去)。2.分别写出通道0和通道1的控制字,并求出它们的计数初值。3.编写完成指定功能的8253初始化程序子程序INIT8253。通道0的控制字:00110110B初值是200moval,00110110Bout93h,almovax,200out90h,almoval,ahout90h,al通道1的控制字:01110110B初值是10000moval,01110110Bout93h,almovax,10000out91h,almoval,ahout91h,al6.下图是8255与8088/86系统总线的连接原理图,要求A口.B口和C口的低4位定义为输出;C口的高4位定义为输入。请完成系列任务:1.A口、B口、C口和控制端口的地址分别是:2.方式控制字是:3.写出完成指定功能的8255初始化的程序片段。端口地址:380h—383hA9A8A7A6A5A4A3A2A1A01110000000380Init8255procmovdx,383Hmoval,Boutdx,almovdx,380houtdx,alInit8255endp7.下图是某PC系列微机应用系统以8255A作为接口,采集一组开关S7~S0的状态,然后它通过一组发光二极管LED7~LED0显示出来,(Si闭合,对应LEDi亮;Si断开,对应IEDi灭)。已知8255A的A.B两组均工作在方式0。(1)写出8255A的四个端口地址;(2)写出8255A的工作方式控制字;(3)编写实现数据采集与显示的子程序App8255。端口地址:320h—323hA9A8A7A6A5A4A3A2A1A01100100000320App8255procmovdx,323houtdx,almoval,10000010Boutdx,alApp8255endp8.下图是某PC系列微机应用系统以8255A作为接口,采集一组开关S7~S0的状态,然后它通过一组发光二极管LED7~LED0显示出来,(Si闭合,对应LEDi亮;Si断开,对应IEDi灭)。已知8255A的A.B两组均工作在方式0。(1)写出8255A的四个端口地址;(2)写出8255A的工作方式控制字;(3)编写实现数据采集与显示的子程序App8255。端口地址:188h—191hA9A8A7A6A5A4A3A2A1A00110001000188App8255procmovdx,191hmoval,10010000Boutdx,alnogoutdx,alApp8255endp9.如图所示,利用8253的3个计数器输出out,分别产生周期为100µs的对称方波.周期为1s的负窄脉冲和周期为10s的对称方波(8353方式控制字如图所示)试按上述要求分别编写8253的初始化程序。计数器1:moval,00110110Bout93h,almovax,200out90h,almoval,ahout90h,al计数器2:moval,01110110Bout93h,almovax,10000out90h,almoval,ahout90h,al计数器3:moval,00011010Bout93h,almovax,100000out90h,almoval,ahout90h,al10.有一个控制系统,有4个控制点,分别由4个对应的输入端控制,现用8255的端口C模拟实现该系统的控制,如图所示(A15~A10按0处理)。开关K0~K3打开则对应发光二极管L0~L3亮,表示该控制点运行正常;开关闭合则对应发光二极管不亮,说明该控制点出现故障,编写8255的初始化程序和控制程序。(假设A口~控制口地址分别为60H~63H)63H为控制端口!;写入方式字moval,10000001b;=81Hmovdx,63H;控制口地址outdx,al;加入下一段更好,使L0~L3全亮moval,0fhmovdx,62H;端口C地址outdx,al;控制程序段movdx,62H;端口C地址inal,dx;读入PC0~PC3movcl,4shlal,cl;左移4位outdx,al;控制PC4~PC711.如下图所示,8253的端口地址为90H~93H。要求8253的通道0产生周期为500µs的负的窄脉冲,8253的通道1产生周期为2S的对称方波。完成如下任务:1.在该图的基础上画出完成指定功能的线路连接(译码电路的设计可略去)。2.分别写出通道0和通道1的控制字,并求出它们的计数初值。3.编写完成指定功能的8253初始化程序子程序INIT8253。12.试按如下要求分别编写8253的初始化程序,已知8253的计数器0~2和控制字I/O地址依次为204H~207H。①使计数器1工作在方式0,仅用8位二进制计数,计数初值为128。②使计数器0工作在方式1,按BCD码计数,计数值为3000。③使计数器2工作在方式2,计数值为02F0H。计数器0初始化:movdx,103Hmoval,01010000Boutdx,almovdx,100hmoval,128outdx,al计数器1初始化:movdx,103Hmoval,00110011Boutdx,almovdx,101Hmovax,3000outdx,almoval,ahoutdx,al计数器2初始化:movdx,103Hmoval,10110100Boutdx,almovdx,102Hmovax,02F0Houtdx,almoval,ahoutdx,al13.试按如下要求分别编写8253的初始化程序,已知8253的计数器0~2和控制字I/O地址依次为204H~207H。①使计数器0工作在方式0,仅用8位二进制计数,计数初值为200。②使计数器1工作在方式2,按BCD码计数,计数值为1234。③使计数器2工作在方式3,计数值为1234H。计数器0初始化:movdx,103Hmoval,00010000Boutdx,almovdx,100hmoval,200outdx,al计数器1初始化:movdx,103Hmoval,01110101Boutdx,almovdx,101Hmovax,1234Houtdx,almoval,ahoutdx,al计数器2初始化:movdx,103Hmoval,10110110Boutdx,almovdx,102Hmovax,1234Houtdx,almoval,ahoutdx,al14.有一个控制系统,有4个控制点,分别由4个对应的输入端控制,现用8255的端口C模拟实现该系统的控制,如图所示(A15~A10按0处理)。开关K0~K3打开则对应发光二极管L0~L3亮,表示该控制点运行正常;开关闭合则对应发光二极管不亮,说明该控制点出现故障,编写8255的初始化程序和控制程序。A9A8A7A6A5A4A3A2A1A0111000000038015.下图是用8255端口A方式0与打印机接口连接示意图及各引脚间时序关系,编程实现该功能。设端口地址