




已阅读5页,还剩7页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
程序设计题1、统计从01000H内存单元开始的100个字(WORD)型带符号数中的正数,负数和零的字(WORD)个数?解:设正数个数存放于BX中,负数个数存放于DI中,零的个数存放于DX中 MOV AX,0100H JZ ZERO MOV DS,AX JL NEGAT MOV BX,0 INC BX MOV DX,0 JMP NEXT1 MOV DI,0 ZERO: INC DX MOV SI,0 JMP NEXT1 MOV CX,100 NEGAT: INC DI NEXT: MOV AX,SI NEXT1: ADD SI,2 CMP AX,0 LOOP NEXT2、实现两个十六位二进制的加法,要求加数放在FIRST开始单元,被加数放在SECOND 开始单元,和数放在SUM单元解:MOV AX, FIRSTADD AX, SECONDMOV SUM, AX3 从BUFF单元起有一个字符串(长度小于65535),以*结束,编写一个完整程序求该字符串长度存入LENT单元,并统计字符串中含有大写英文字符的个数并存入COUNT单元。要求源程序具备必要的伪指令和段说明。1DATA SEGMENTINC CXBUFF DB ABCD.*CMP AL,ALENT DW ?JC NEXTCOUNT DW ?CMP AL,ZDATA ENDSJNC NEXTCODE SEGMENTINC DX ASSUME CS:CODE,DS:DATANEXT:INC BXSTART:MOV AX,DATAJMP LP MOV DS,AXDONE:INC CX LEA BX,BUFFMOV LENT,CX MOV CX,0MOV COUNT,DX MOV DX,0MOV AH,4CHLP: MOV AL,BXINT 21HCMP AL,*CODEENDSJZ DONEEND START4有一带符号8位数X存于DAT单元编一个程序段判断该数,若x小于0则将0FFH送MARK单元;若X等于0则将MARK+1单元置0FFH;若X大于0则置MARK+2单元为0FFH。MOV AL,DATJMP DONEAND AL,ALLPl:MOV MARK,0FFHJS LP1JMP DONEJZ LP2LP2:MOV MARK+1,0FFHMOV MARK+2,0FFHDONE:HLT5已知有X、Y、Z三个字变量,存放无符号整数,请编一个完整的程序实现公式Z=(X+Y)/(X-Y+600)(不考虑溢出情况)。DSEG SEGMENT SUB BX,YX DW ?ADD BX,600Y DW ?MOV AX,XZ DW ?ADD AX,YDSEG ENDSMOV DX,0CSEG SEGMENTDIV BXASSUME CS:CSEG,DS:DSEGMOV Z,AXMAIN PROC FARMOV AH,4CH BEGIN: MOV AX,DSEG INT 21H MOV DS,AX MAIN ENDP MOV BX,X CSEG ENDS END BEGIN6AX寄存器中存放着4位十六进制数。试编写一个汇编语言程序,将这4位十六进制数分别转换为相应的ASCII码,并依次存放到RESULT数组的4个字节中去,要求用调用子程序的方法实现。CODE SEGMENTHASC PROC NEAR ASSUME CS:CODE,DS:CODEMOV DL,ALSTART:MOV BX,CODEAND DL,0FHMOV DS,BXCMP DL,9MOV CL,4JA L2MOV BL,4ADD DL,30HMOV SI,OFFSET RESULTL1:RETLP:CALL HASCL2:ADD DL,37HMOV SI,DLJMP L1INC SIHASC ENDPSHR AX,CLRESULT DB 4 DUP(?)DEC BLCODE ENDSJNZ LPEND STARTEXIT:MOV AH,4CHINT 21H7写出对存放在DX和AX中的双字长数求补的指令序列。方法1 方法2 方法3 MOV CX,0 NOT AX NEG DX SUB CX,AX NOT DX NEG AX MOV AX,CX ADD AX,1 SBB DX,0 MOV CX, 0 ADC DX,0 SBB CX, DX MOV DX, CX8设有两个等长字符串。试编写一个汇编语言程序,比较它们是否完全相同;若相同,则将字符Y送入AL中,否则,将字符N送入AL中。CODE SEGMENTREPE CMPSBASSUME CS:CODE,DS:CODEJNZ NESTART:MOV AX,CODEMOV AL,YMOV DS,AXJMP EXITMOV ES,AXNE:MOV AL,NCLDEXIT:MOV AH,4CHLEA SI,STRING1INT 21HLEA DI,STRING2STRING1 DBMOV CX,DISTRING2 DBSUB CX,SICODEENDSXOR AX,AXEND START9写出程序段,把DX,AX中的双字右移四位。MOV CL,4 SHR DX,CL SHR AX,CL SHL BL,CL MOV BL,DL OR AH,BL9编写一个完整的8086汇编语言程序,从附加段中首地址为ADR1(变量名)连续存放的100个字型无符号整数中找出最大数,并将此数及其偏移地址分别放入变量MAX和MAXM中DATA SEGMENTMOV AX,ES:SIADR1 DW 100 DUP(?)LOP1:CMP AX,ES:SIMAX DW ?JAE LOP3MAXM DW ?MOV AX,ES:SIDATA ENDSMOV ES:MAXM,SICODE SEGMENTLOP3:ADD SI,2ASSUME CS:CODE,DS:DATA,ES:DATALOOP LOP1MAIN PROC FARMOV ES:MAX,AX MOV AX,DATAMOV AH,4CHMOV ES,AXINT 21HMOV SI,OFFSET ADR1MAINENDPMOV CX,100CODEENDSMOV ES:MAXM,SIEND MAIN10已知(AX)=4BD5H,统计AX中1的个数和0的个数,并分别放在BL和DL中。编写程序段实现该功能。MOV AX,4BD5H INC DL MOV BL,0 JMP L3 MOV DL,0 L2: INC BL MOV CX,16 L3: LOOP L1 L1: SHL AX,1 HLT JC L211有一个首地址为ARRAY的N个字的数组,请编程序使该数组中的数按照从大到小的次序排序。(采用冒泡排序算法)DATA SEGMENTMOV BX,0 ARRAY DW A1,A2,A3,ANLOOP2:MOV AX,ARRAYBXDATA ENDSCMP AX,ARRAYBX+2PROG SEGMENTJGE CONTINUE ASSUME DS:PROG,DS:DATAXCHG AX,ARRAYBX+2MAIN PROC FARMOV ARRAYBX,AXSTART: PUSH DSCONTINUE:ADD BX,2 SUB AX,AXLOOP LOOP2 PUSH AXMOV CX,DI MOV AX,DATALOOP LOOP1 MOV DS,AXRET MOV CX,NMAINENDP DEC CXPROGENDSLOOP1: MOV DI,CXEND START存储器设计应用题1已知有SRAM芯片62256(32K8)及EPROM芯片27256(32K8),现用这两种芯片构成8088最小系统内存的一部分,其中SRAM所占的地址空间为40000H-47FFFH,EPROM所占的地址空间为F8000H-FFFFFH,试设计出其原理图。2给8088CPU系统扩展32K的ROM,且所选用的存储器芯片为8K8,地址译码器为74LS138,ROM的地址范围从60000H存储器芯片为8K8,可知芯片容量为8K,地址线为13条,数据线为8条,而系统要求容量为32K,位数是8,因此为字扩展。需要的芯片为4个 存储器芯片的地址为:1)、地址译码器:3个输入端的信号中必须有:A13,A14,其对应的位置不同,输出的引脚也不同。只要输入信号与输出信号一致,且连接到相应的存储器芯片上 。2)、数据线连接正确3)、地址线连接正确67FFFH,要求写出每一个存储器芯片的地址范围,画出逻辑连线图。3设某系统的CPU有16根地址线A15-A0、8根数据线D7-D0。现需扩展6KB的ROM,地址范围为:0000H-17FFH,采用2716芯片。 (1) 请写出存储器器件2716的数据线和地址线的条数; (2)计算ROM的芯片数量; (3)设计存储器扩展原理图,并写出每片ROM的地址范围。1)存储器2716的数据线有8条,地址线有11条。 2)因为2716的容量为2KB,要扩展6KB,所以需要三片。 3)原理图如下:4已知RAM芯片结构如图所示,回答下列问题:1) 该芯片容量为多少?若要求构成一个2K8的RAM阵列,需几个这样的芯片?42) 若RAM阵列组的起始地址为E1000H,画出存储器系统与8086的电路连接图(8086工作在最小模式),并写出每组RAM芯片的地址空间。3) 编程:将缓冲区中的10个数据写进E1000开始的10个单元中,并说明如何查看结果? MOV AX,0E100H MOV CX,10 MOV ES,AX CLDMOV SI,OFFSET BUF REP MOVSB MOV DI,O查看结果 D E100:05设某微机系统需要扩展内存RAM 32KB,扩充的存储器空间为10000H开始的连续存储区域。存储器芯片采用16K8的RAM芯片,CPU使用8088。 1)选用芯片,画出逻辑连接图; 2)写出各片RAM的所在地址区域。答案:2) 地址范围 第一片 10000H-13FFFH 第二片 14000H-17FFFH 6用4K4的EPROM存储器芯片组成一个16K8的只读存储器。试问:(1)该只读存储器的数据线和地址线的位数。(2)根据题意需要多少个4K4的EPROM芯片?(3)画出此存储器的组成框图。答案: (1)该存储器有14位地址线和8位数据线。(2)共需总芯片数为8片。8255编程题1.一个8088系统中有一8255A,8255A各口设置如下:A组与B组均工作于方式0,A口为数输入,B口为输出,C口高位部分为输出,低位部分为输入,A口地址设为40H。 1) 写出工作方式控制字 2) 对8255A初始化3) 从A口输入数据,将其取反后从B口送出 1)10010001B 即91H 2) MOV AL,91H; OUT 43H,AL3)IN AL,40H; NOT AL; OUT 41H,AL2.设8255A的4个寻址地址号为0060H0063H,试编写下列各种情况下的初始化程序。 1) 将A组和B组设置成方式0,A口,B口为输入,C口为输出。 2) 将A组工作方式设置成方式2,B组为方式1,B口作为输出。 3) 将A口,B口均设置成方式1,均为输入,PC6和PC1为输出.4) A口工作在方式1,输入;B口工作在方式0,输出;C口高4位配合A口工作,低4位为输入。1) MOV AL,92H 2) MOV AL,0C4H 3) MOV AL,0B6H 4) MOV AL,0B1H OUT 63H,AL OUT 63H,AL OUT 63H,AL OUT 63H,AL3. 8255A控制字如下,8255A端口地址为:160H、162H、164H、166H,端口A方式0输出,端口B方式0输入,端口C方式0输出。编写程序实现初始化,并将端口B内容的2倍与端口C的内容求和后将结果取反送到端口A。根据端口地址知,端口A地址为:160H,端口B地址为:162H,端口C地址为:164H,控制端口地址为:166H。端口A方式0输出,端口B方式0输入,端口C方式0输入知:控制字8BH。MOVAL,8BH MOVDX, 164H MOVDX,0166H INAL, DX OUT DX,AL ADDAL, BLMOVDX,0162H NOTAL INAL,DX MOVDX, 0160HMOVBL,AL OUTDX,AL ADDBL,AL 4 用一片8255 A芯片设计一基于PC系统总线的I/O接口板,要求: 1)8255A占用的端口地址为300H-306H,画出原理图。 2)设8255A的PA、PB、PC口均工作在方式0,PA口为输入,PB、PC口均为输出,编写8255的初始化程序片段(已知8255A控制字为10010000B)。3)编写程序片段,将从PA口读入的状态送至PB口输出。(2)MOV DX, 306H MOV AL, 90HOUT DX, AL3)MOV DX, 300HIN AL, DXMOV DX, 302HOUT DX, AL 5.已知8255的控制口地址为236H,开关信息接在PB口,发光二极管接在PA口,使用8255作为接口芯片,读开关量的状态,并用发光二极管显示输出。在将开关的信息存放在FIRST单元的同时,发光二极管完成其信息的显示。要求画出完整的线路连接图并设计相应的程序。(8086工作在最小模式,8255A相应的控制字为82H)。MOV DX, 236H MOV AL, 82H OUT DX, AL MOV AX, SEG FIRST MOV DS, AX MOV SI, OFFSET FIRST LOP: MOV DX, 232HIN AL, DXMOV SI, ALMOV DX, 230HOUT DX, A LJMP LOP6 8255A的工作方式控制字和C口的按位置位/复位控制字有何差别?若将C口的PC2引脚输出高电平(置位),假设8255A控制口地址是303H,程序段应是怎样的?答:工作方式控制字的最高位为1,而C口的按位置位/复位控制字最高位为0 MOV DX,303H MOV AL,80H OUT DX,AL MOV AL,05H OUT DX,AL7 已知8255A的控制口地址为236H,LED采用共阳级接法。字型信息接在PB口,字位信息接在PA口,使用8255A作为接口芯片,在两块LED上显示自己的学号。要求画出完整的线路连接图并设计相应的程序(8086工作在最小模式,8255A相应控制字为80H)。 答案:见图 MOV DX,236H LOP: LOOP LOP MOV AL,80H MOV DX,232H OUT DX,AL MOV AL,nn ;学号高位 MOV CX,000H OUT DX,ALSTART:MOV DX,232H MOV AL,2 MOV AL,nn ; 学号低位 MOV DX,230H OUT DX,AL OUT DX,AL MOV AL,1 LOP1:LOOP LOP1 MOV DX,230H JMP START OUT DX,AL8.若打印机及其工作时序如图所示,当打印机不忙时(BUSY=0),向它送数据(设每次只传送1个字节)并在数据稳定时用 负脉冲将数据存于打印机内部,同时设置打印机忙信号,即BUSY =1。 1)用可编程接口芯片8255A将打印机与总线相连接起来。若规定8255A的地址为0320H032FH任选,试画出连接电路图。 2)数据段中首地址为BUFFER的区域中存放着100字节要打印的字符,试编写包括8255A初始化的打印程序,并将100个字符打印出来。9.在一个系统中,8255A的四个端口地址分别为:420H、422H、424H和426H。要求:1)初始化8255A,使端口A、B、C均工作于方式0,端口A作为输入端口,端口B和C作为输出端口。2)将端口A输入的信息取反后直接输出到端口B。3)检测端口A输入的信息的PA7位。当PA7=1时,端口C输出FFH,否则,输出00H。请编写程序段,完成上述功能(程序要加注解)。答案: 1) MOV AL,90H MOV DX,426H OUT DX,AL 2) MOV DX,420H IN AL,DX MOV DX,422H NOT AL OUT DX,AL 3) MOV DX,420H ;从端口A输入信息 IN AL,DX TEST AL,80H ;测试PA7是否为0 MOV AL,0 JZ KO ;如果为0,输出0 MOV AL,0FFH ;否则输出0FFH KO:MOV DX,424H ;端口C的地址 OUT DX,AL8253编程题1 设8253A三个计数器的端口地址为100H、101H、102H,控制寄存器端口地址103H。输入时钟为2MHz,让1号通道周期性的发出方波,其周期为1ms,试编写初化程序段。答: 要输出脉冲周期为1ms,输出脉冲的频率是,当输入时钟频率为2MHz时,计数器初值是。使用计数器1,先加载低8位,后加载高8位,设为方式3,二进制计数,控制字是76H。设控制口的地址是103H,计数器1的地址是101H。程序段如下:MOVDX,103HMOVAX,2000MOVAL,76HOUTDX,ALOUTDX,ALMOV
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年福建省大学生志愿服务乡村振兴计划招募500人考前自测高频考点模拟试题及答案详解(易错题)
- 2025年上半年四川泸州市龙马潭区考试选调机关事业单位人员17名考前自测高频考点模拟试题及答案详解(新)
- 2025广西河池市大化瑶族自治县特殊教育学校招聘公益性岗位工作人员2人考前自测高频考点模拟试题附答案详解(典型题)
- 2025辽宁长海县银龄教师招聘6人模拟试卷带答案详解
- 四川中科青翼智能科技有限公司公开招聘笔试历年参考题库附带答案详解
- 2025黑龙江哈尔滨电气集团有限公司校园招聘370人笔试历年参考题库附带答案详解
- 2025年应急管理部所属单位第二批次公开招聘(秦皇岛有岗)考前自测高频考点模拟试题含答案详解
- 2025江苏常州市钟楼金隆控股集团有限公司招聘第一批人员考前自测高频考点模拟试题及答案详解一套
- 2025年第二次调整湖南省烟草专卖局系统考试聘用工作人员部分职位计划的模拟试卷参考答案详解
- 2025贵州航天控制秋季招聘笔试历年参考题库附带答案详解
- 肿瘤登记资料的统计分析-生存分析
- (高清版)AQ∕T 1047-2007 煤矿井下煤层瓦斯压力的直接测定方法
- 危险货物集装箱装箱检查员真题练习附有答案
- HG-T20678-2023《化工设备衬里钢壳设计标准》
- 间歇充气加压用于静脉血栓栓塞症预防的中国专家共识(2022年版)
- 长春南湖水质情况分析报告
- 外阴癌疾病演示课件
- (完整版)《供应链管理》历年自考判断题试题及答案
- MySQL数据库PPT完整全套教学课件
- 十四号线道岔监测系统的应用与分析
- GB/T 6441-1986企业职工伤亡事故分类
评论
0/150
提交评论