欢迎来到得力文库 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
得力文库 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    微机汇编.doc

    • 资源ID:33953855       资源大小:105.50KB        全文页数:23页
    • 资源格式: DOC        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    微机汇编.doc

    如有侵权,请联系网站删除,仅供学习与交流微机汇编【精品文档】第 23 页一填空:1、 ZF标志位是标志结果是否为零的,若结果为零,ZF为_1,否则ZF为_0_。当ZF为1时,SF为_0_。2、 调用程序与子程序之间的参数传递方法有四种,即堆栈法、_约定寄存器、_约定存储器单元法、_向量传递法_。3、 8086/8088 CPU可访问2个独立的地址空间,一个为存贮器地址空间,其大小为_1MB_个字节;另一个为_ I/O地址空间 _,其大小为_ 64k 字节。4、 CPU 在指令的最后一个时钟周期检测INTR引脚,若测得INTR为_1_且IF为_1_,则CPU在结束当前指令后响应中断请求。5、 当存储器的读出时间大于CPU所要求的时间,为保证CPU与存储器的周期配合,就需要用_ READY _信号,使CPU插入一个_Tw_状态。6、 INT 40H 指令中断向量存放在_ 0000 _H:_0100 _H中。7、 在8086通用寄存器中,可以用作存储器寻址的寄存器有_ds _和_ ax _。8、 PSW中_ TF _、_ IF _、_ DF _是控制标志。9、 标号可以有两种类型属性。它们是_ NEAR _和_ FAR _。10、 请用一条指令实现如下操作:(1)将ax中划x的位清015 5 4 0 指令:_AND AX,0060H _(2)寄存器的低四位取反:_ XOR AX,000FH _。11、 设(ax)=1000h,(bx)=2340h,则在执行了指令cmp ax,bx后,cf标志值为_1 _,zf标志值为_ 0 _。12、 SRAM靠_ 寄存器 _存储信息,DRAM靠_ mos管的栅电容上的电荷 _存储信息,为保证DRAM中内容不丢失,需要进行_ 周期性刷新 _操作。13、 CPU响应可屏蔽中断的条件是_ IF=1 _、_当前指令执行完毕 _、_ 提供中断类型码 。14、 当ALE有效时,8086/8088CPU地址/数据总线AD0-AD15上传送的是_ 地址 _信息。15、 8088是一种_ 8 _位的微处理器。16、 总线周期是指_ 指cpu访问一次外设所需的时间 _。17、 当_ 等待测试信号为低电平 _时,CPU便进入等待状态(Tw)。18、 动态存储器DRAM的刷新是指_ DRAM 只能将数据保持很短的时间。为了保持数据,DRAM 必须隔一段时间刷新一次 _。19、 存贮器的地址区域_ 03FFH _为中断向量区。20、 用8K×8位的RAM芯片组成16K×16的存储器时,所需的RAM芯数和产生片选信号的地址分别为_4 、_ A13、A14 _。1、 宏指令定义必须由伪指令_ MACRO _开始,伪指令_ ENDM_结束,两者之间的语句称为_ 宏定义 _。2、 三个重复前缀指令为_REP_、_REPE_、_REPNE _。3、 8086 CPU通过_代码段 _寄存器和_ 指令指针 _寄存器能准确找到指令代码。4、 CPU 在指令的最后一个时钟周期检测INTR引脚,若测得INTR为_1 _且IF为_ 1 _,则CPU在结束当前指令后响应中断请求。5、 若一个数据块在内存中的起始地址为80A0H:DFF6H,则这个数据块的起始地址的物理地址为_8E9F6H _。6、 在80x86微处理器中,指令分配给寄存器SP的默认段寄存器是_ ss堆栈段寄存器 _。7、 8086内部由_总线接口部分件 _和_ 执行部件 _两部分组成,其作用分别是_ 负责控制存储器读写 _和_ EU从指令队列中取出指令并执行 _。8、 8086有_ 20 _根地址线,可寻址_1M _字节的地址空间。9、 最小模式系统中除CPU以外的总线主模块是DMA 模块_,它与CPU间通过(HOLD)和(HLDA)两个信号来交换总线控制权。1、 分别用一条语句实现下述指明的功能:(1)栈顶内容弹出送字变量ayw_ pop ayw _(2)双字变量ayd存放的地址指针送ES和SI_ LES SI,AYD _(3)变量ay2类型属性送AH_ MOV AH,TYPE AY2 _(4)不允许中断即关中断_ CLI _(5)将字符串how are you!存入变量ayb_ AYB DB “HOW ARE YOU!” _(6)子程序返回调用程序_ RET _(7)地址表达式ayy4的偏移地址送字变量addr_ MOV ADDR,OFFSET AYY4 _(8)AX的内容加1,要求不影响CF_ INC AX _(9)BX的内容加1,要求影响所有标志位_ ADD BX,1 _(10)若操作结果为零转向短号goon_ JZ GOON _2、 设堆栈指针(SP)=2200H,此时若将AF、AX、BX、CX依次推入堆栈后,(SP)= _2192H _。3、 8086/8088微处理器的INTR引脚由标志位_IF 控制。4、 一个基本的总线周期由_ 4 _个时钟周期组成。5、 8086的地址总线中可用作I/O端口寻址的有16根,能形成_65536 _个端口地址。6、   8086外部中断有_硬件中断 和_软件中断 _,当CPU内的中断标志IF“0”状态时,外部中断线同时为“1”状态时,CPU响应哪个中断请求信号_ 软件中断 _。7、 最小模式系统除CPU、存储器、I/O接口和总线外,至少还应配置_ 8284时钟 _、_8282锁存器 _、_ 8286收发器 _三种芯片部件。1、 8位无符号整数的表示范围为0255,写成16进制形式为_ 00FFH _,8位有符号整数的表示范围为-128+127,写成16进制形式为_ 00FFH _。2、 设(CS)=25ffh,(DS)=2140h,(ES)=2240h,(SS)=2510h,(BP)=02d0h,(SI)=0010h,(DI)=0206h,则(1)指令mov ax,bp+si+2的源操作数有效地址为_ 2E2H_,物理地址为_ 253E2H _。(2)指令mov ax,di+100h的源操作数有效地址为_306H ,物理地址为_21706H _。3、 8086中地址/数据线分时复用,为保证总线周期内地址稳定,应配置_ 锁存器 _,为提高总线驱动能力,应配置_ 驱动器 _。4、 类型码为_ 16H _的中断所对应的中断向量存放在0000H:0058H开始的4个连续单元中;若这4个单元的内容分别为_80H、70H、60H、50H_,则相应的中断服务程序入口地址为 5060H:7080H 。5、 某8086微处理器系统中设计了一个存储为128KB的SRAM存储器模块,约定该存储器模块的起始地址为40000H,则该存储器模块的末地址为_ 5FFFFH _。若用于该存储器模块片选译码的地址信号线为A17、A18、A19,则该模块片选信号的逻辑表达式为:/CS=_ 4 。6、 中断处理的过程一般包括中断申请、_中断判优 _、_中断响应 _、中断服务、中断返回。7、 逻辑地址由_ 段地址 _和_ 偏移地址 两部分组成。8、 时钟周期是CPU的时间基准,它由计算机的_ 主频 _决定,若8086的时钟周期为250ns,则基本总线周期为_ 1000ns _。9、 只有_CPU和内存或I/O接口之间传输数据,以及填充指令队列 _时,CPU才执行总线周期,总线接口部件BIU的功能是_负责与存储器和输入输出端口的接口_。单选题1、 在下列指令的表示中,不正确的是( C )。A、mov al,bx+siB、jmp short doniC、dec bxD、mul cl2、 IBM PC微机中,有符号数是用( B )表示的。A、原码B、补码C、反码D、BCD码3、 可用作寄存器间接寻址或基址、变址寻址的地址寄存器,正确的是( D )。A、ax,bx,cx,dx B、ds,es,cs,ssC、sp,bp,ip,bxD、si,di,bp,bx 4、 设al=20h,si=0500h,ds=3000h,(30500h)=0c0h,cf=1。执行sbb al,si后,正确的结果是( )。A、al=5fh、sf=1、cf=1B、al=60h、sf=1、cf=0C、al=5fh、sf=0、cf=1D、al=60h、sf=0、cf=05、 执行下列指令序列后,正确的结果是( A )。mov al,81hadd al,aladc al,alA、al=05hB、al=204hC、al=04hD、al=205h6、 下面的数据传送指令中,错误的操作是( D )。A、 mov ss:bx+di,1000hB、mov dx,1000hC、mov word ptrbx,1000hD、mov ds,2000h7、 cpu发出的访问存储器的地址是( A )。A、物理地址B、偏移地址C、逻辑地址D、段地址8、 连接到64000h6FFFFh地址范围上的存储器是用8k×8 RAM芯片构成的,该芯片要( B )片。A、8片B、6片C、10片D、12片9、 连续启动两次独立的存储器操作之间的最小间隔叫(D )。A、存取时间B、读周期C、写周期D、存取周期10、 若8086 CPU主频为8MHz,则其基本总线周期为( C )。A、200nsB、500nsC、125nsD、250ns1、 下列叙述正确的是( C )。A、对两个无符号数进行比较采用cmp指令,对两个有符号数比较用cmps指令。B、对两个无符号数进行比较采用cmps指令,对两个有符号数比较用cmp指令。C、对无符号数条件转移采用jae/jnb指令,对有符号数条件转移用jge/jnl指令。D、对无符号数条件转移采用jge/jnl指令,对有符号数条件转移用jae/jnb指令。2、 把汇编源程序变成代码程序的过程是( A )。A、编译B、汇编C、编辑D、链接3、 用一条指令仅实现将(bx+si)->ax 的方法是(D )。A、xchg ax,bxsiB、mov ax,bx+siC、lea ax,bxsiC、lea ax,bxsi4、 设ax=1000hneg axnot ax执行上述指令后,正确的结果是( B )。A、ax=1001hB、ax=0fffhC、ax=1000hD、ax=0111h5、 从buf 单元开始存放有10 个字节数据,欲找出与al 中内容不同的数据,并将该数据的偏移地址送adr 单元,正确选择的指令序列是( B )。A、 cldrep cmpsbjz k1mov adr,dik1: B、 cldrepnz cmpsbjnz k1mov adr,dik1: C、 cldrepz scasbjz k1dec dimov adr,dik1:  D、 cldrepz scasbjne k1dec dimov adr,dik1: 6、 当一个带符号数大于0fbh 时程序转移,需选用的条件转移指令是( C )。A、jleB、jnlC、jnleD、jl7、 从8086CPU的内部结构上看,其是由( C )两部分组成。A、控制器和20位物理地址加法器B、运算器和总线接口C、执行单元和总线接口单元D、控制器和运算器8、 8086的内存空间和I/O空间是( A )。A、单独编址的,分别是1MB和64KBB、单独编址的,都是1MBC、统一编址的,都是64KBD、统一编址的,都是1MB9、 在8086CPU的标志寄存器中,控制标志位占( A )。A、3位B、9位C、4位D、16位10、 某微机字长16位,其存储器容量为64KB,如果按字编址,其寻址范围是(B )。A、0(16K-1)字B、0(32K-1)字C、0(16K-1)BD、0(64K-1)字。1、 在一段汇编程序中多次调用另一段程序,用宏指令比用子程序实现起来( B )。A、占内存空间小,但速度慢B、占内存空间大,但速度快C、占内存空间相同,速度快D、占内存空间相同,速度慢2、 指令jmp far ptr done属于( C )。A、段内转移直接寻址B、段内转移间接寻址C、段间转移直接寻址D、段间转移间接寻址3、 设 sp初值为2000h,执行指令"push ax"后,sp的值是( D )。A、1fffh B、1998hC、2002hD、1ffeh  4、 指令指针寄存器是( A )。A、ipB、spC、 bpD、psw5、 在汇编语言程序中,对end 语句的叙述正确的是( C )。A、end 语句是一可执行语句B、end 语句表示程序执行到此结束C、end 语句表示源程序到此结束D、end 语句在汇编后要产生机器码6、 8086/8088的存储器组织是将存储器划分为段,可作为段的起始地址是(B )。A、185a2hB、00020hC、01004hD、0ab568h7、 若用6264SRAM芯片(8K×8位)组成128KB的存储器系统,需要( A )片6264芯片。A、16B、24C、32D、64 8、 对存储器访问时,地址线有效和数据线有效的时间关系应该是( C )。A、数据线较先有效B、二者同时有效C、地址线较先有效D、同时高电平9、 下面是某8086微机内存中的部分数据,则中断类型号为11H的中断服务程序的入口地址是( C )。0000:0040 B3 18 8A CC 4D F8 00 F0 41 F8 00 F0 C5 18 8A CC0000:0050 39 E7 00 F0 A0 19 8A CC 2E E8 00 F0 D2 EF 00 F0A、F000:F84DB、A019:8ACCC、CC8A:19A0D、4DF8:00F010、 8086/8088 CPU内部有一个始终指示下条指令偏移地址的部件是( C )。A、SPB、CSC、IPD.BP1、 下列指令中,能完成将AL寄存器清零的有( C )条。CMP AL,AL; SUB AL,AL; XOR AL,AL; MOV AL,0A、1B、2C、3D、42、 8086cpu在基址加变址的寻址方式中,变址寄存器可以为( D )。A、BX或CXB、CX或SIC、DX或SID、SI或DI3、 条件转移指令jb产生程序转移的条件是( A )。A、cf=1B、cf=0C、cf=1 和zf=1D、cf=1和zf=0 4、 cbw 指令的功能是( B )。A、 把源操作数的符号位扩展到目的操作数中B、 把al 中的符号位扩展到ah 中C、 把ah 中的符号位扩展到al 中D、 把ax 中的符号位扩展到dx 中5、 设ah0,al06h,bl09h,执行指令add al,blaaa之后,其结果应是( A )。A、ah01,al05B、ah1 al15hC、ah0 al0fhD、ah0 al15h6、 堆栈中当前出栈的存储单元地址是( A )。A、ss*10h+spB、ss*10h+bpC、ss*10+spD、ss*10+bp7、 对存储器访问时,地址线有效和数据线有效的时间关系应该是( C )。A、数据线较先有效B、二者同时有效C、地址线较先有效D、同时高电平8、 IBM-PC及其兼容机具有( D )I/O空间。A、统一编址的64KBB、统一编址的1MBC、独立编址的1MBD、独立编址的64KB 9、 CPU响应INTR和NMI中断时,相同的必要条件是(D )。A、当前总线空闲B、允许中断C、当前访问内存结束D、当前指令执行结束10、 通常,中断服务程序中的一条STI指令目的是( D )。A、允许低一级中断产生B、开放所有可屏蔽中断C、允许同级中断产生D、允许高一级中断产生1、 某系列微机对存储器的分段,如果每一个段最多的字存储单元(16 位二进制)是32k,那么表示段内字节单元偏移地址的二进制位数应是( B )。A、20 位 B、16 位 C、15 位 D、12 位 2、 在进行二重循环程序设计时,下列描述正确的是( A )。A、外循环初值应置外循环之外;内循环初值应置内循环之外,外循环之内。B、外循环初值应置外循环之内;内循环初值应置内循环之内。C、内、外循环初值都应置外循环之外。D、内、外循环初值都应置内循环之外,外循环之内。3、 选用串操作指令时,错误的操作是( D )。A、置方向标志位B、根据串操作指令设置重复次数并送入cx C、设置源操作数及目的操作数指针D、源操作数和目的操作数都可以加段超越4、 mov cl,8 rol ax,cl or ax,bx假设ax=0012h,bx=0034h,那么上述程序段执行后,ax中的结果是( C )。A、1234hB、3412hC、0046hD、0034h5、 完成将累加器al 清零,并使进位标志cf 清零,下面错误的指令是( D )。A、mov al,00hB、and al,00hC、xor al,alD、sub al,al6、 用一条指令实现将寄存器bx和si的内容相加,结果并送入ax中,这条指令是( D )。A、add ax,bxsiB、mov ax,bxsiC、and ax,  bxsiD、lea ax,bxsi7、 RESET信号有效后,8086 CPU执行的第一条指令地址为( C )。A、00000HB、FFFFFHC、FFFF0HD、0FFFFH8、 欲使8086CPU工作在最大组态方式,其引脚应接( C )电平。A、TTLB、CMOSC、逻辑低 D、逻辑高 9、 8086/8088中除( A )两种寻址方式外,其它各种寻址方式的操作数均在存储器中。A、立即寻址和直接寻址B、寄存器寻址和直接寻址C、立即寻址和寄存器寻址D、立即寻址和间接寻址10、 EPROM是指( D )。A、随机读写存储器B、可编程只读存储器C、只读存储器D、可擦除可编程只读存储器一、 阅读程序回答问题(15分)DSEG SEGMENTBLOCK DB 51,30,43,107,89,90,200,197,70,64COUNT EQU $-BLOCKRESULT DB 0DSEG ENDSCODE SEGMENTASSUME CS:CODE,DS:DSEGMAIN PROC FARSTART:PUSH DSSUB AX,AXPUSH AXMOV AX, *MOV DS,AXMOV ES,AXMOV SI, *MOV CX,COUNTCON: MOV AL,SITEST AL,01H*JZ NEXTINC RESULTNEXT: INC SILOOP CONRETMAIN ENDPCODE ENDSEND START问题:1、简述程序的功能。(3分) 答:计算BLOCK数据元素中奇数的个数,并存入RESULT中2、写出程序执行后,RESULT单元的内容。(2分) 答:5(奇数的个数)3、写出第3行中$的作用和汇编后COUNT的值。(3分) 答:代表BLOCK的地址(偏移)指针地址,104、 写出*处的完整指令。(2分) 答:MOV AX,DATA5、 写出*处的完整指令,并写出该指令的替代指令。(3分) 答:MOV SI,OFFSET BLOCK 或 LEA SI,BOLCK6、不改变程序功能,写出*处的替代指令。(2分) 答:AND AL,01H一、 阅读程序回答问题(15分)DATA SEGMENTFEN DB 85,-90,67,-127,95,77,88,73,60,83COUNT EQU $-FENRESULT DB ?DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART PROC FARPUSH DSMOV AX,0PUSH AXMOV AX,DATAMOV DS,AXMOV SI,OFFSET FENMOV CX,COUNTDEC CX ;*MOV AL,SIMOV RESULT ,ALTEST AL,80HJZ LOPNEG ALLOP:INC SIMOV BL,SITEST BL,80HJZ NEXTNEG BLNEXT:CMP AL,BLJAE NEXT1MOV AL,BLMOV BL,SIMOV RESULT,BLNEXT1:LOOP LOPRETSTART ENDPCODE ENDS END START问题:1、简述该程序的功能。(6分) 答:把绝对值最大的数找出来放在RESULT单元中2、 写出程序执行后,RESULT单元的内容。(2分) 答:1273、 *处为什么要用DEC CX指令将CX的值减1?(3分) 答:比较次数比被比较数据少14、 简述LOOP指令的执行过程。(2分) 答:cx-cx 转移到标号处,循环被重复| 如果cx-0,结束循环,执行后续语句5、最后一句END START伪指令中START的作用是什么?(2分)答:表示程序结束,汇编程序在遇到end结束汇编,程序将从START标号开始执行 一、 阅读程序回答问题(15分)假定x1,x2,xn为无符号数。org 100hblok dw x1,x2,xncount equ(-blok)/2result dw count,?lea bx,blok-2mov cx,resultxor ax,axgoon:add bx,2cmp ax,bxjae next ;*mov ax,bxnext:loop goonmov result+2,ax问题:(1)程序运行后,bx的值;(2分)答:100H+2*(COUNT-1)(2)程序循环次数;(2分)答:= COUNT(3) result+2字存储单元的内容;(5分) 答:MAX(X1,X2,.,XN)(4)*处程序改为jbe后,result+2字存储单元的内容;(2分)(5)如果x1,x2,xn为有符号数,要实现与原程序相同功能,*处程序如何应该修改。(4分)答: 一、 阅读程序并填空(每空3分,共15分)功能:从键盘读入一字符串(长度小于40),将该串反转后,输出显示。maxno equ 41sseg segment stackdw 100 dup(?)sseg endsdseg segmentmesg1 db 'input a string:$'mesg2 db 'it's reverse is:'buf db maxno,?,maxno dup(?)dseg endscseg segmentassume cs:cseg,ds:dsegstart:_MOV AX,DSEG_mov ds,axmov dx,offset mesg1mov ah,9int 21hmov dx,offset buf_MOV AH,OAH_int 21hxor ax,ax_MOV AL,BUF+1_ ;取实际读入字符个数lea di,buf+2mov si,diadd si,axmov byte ptr si,'$'dec sicont:cmp di,si_JGE FINISHD_mov al,sixchg al,didec si_INC DI_ ;调整dijmp contfinished:lea dx,buf+2mov ah,9int 21hmov ax,4c00hint 21hcseg endsend start一、 阅读程序并填空(每空3分,共15分)功能:完成对首地址为a 的n 字正整数组从小到大排序。data segment  a dw n dup (?)  data ends code segment  assume cs:code,ds:data  start:  mov ax,data_mov ds,ax_mov cx,n  _dec cx_loop1:  mov di,cx  mov bx,0  loop2:  _mov ax,abx_cmp ax,abx+2  _JL continue_xchg ax,abx+2  mov abx,ax  continue:  add bx,2  loop loop2  _mov cx,di_loop loop1  mov ah,4ch  int 21h  code ends  end start  名词解释:指令周期 :执行一条指令所需要的时间,一般由若干个组成 总线周期 :总线周期通常指的是CPU完成一次访问I/O端口操作所需要的时间统一编址:也称存储器映射编址方式,它把内存的一部分地址分配给I/O端口软中断 :又称内部中断,由主机内部产生或程序预失安排的中断时序:计算机的时间顺序 BIOS:基本输入输出系统 IP :在程序的运行过程中,它始终指向下一条指令的首地址,和cs一起确定下一条指令的物理地址 微处理器字长:即数据总线带宽,总线带宽是可以同时传输的数据位数,位数越多,一次传输的信息就越多基址变址寻址:操作数是一个基址寄存器和变址寄存器的总和,所以存放地址由两部分组成。8088最小组态:在系统中只有8088一个微处理器 可屏蔽中断:保存断点入栈,响应经中断控制器8259优先级判断后的中断请求,恢复断点中断向量 :中断服务的入口地址 物理地址 :每一个字节单元给以一个唯一的存储器地址 HOLD/ HLDA :总线请求信号/总线请求响应信号堆栈:一种数据结构,以先进后出的方式来访问存储区逻辑地址:由段地址和段内偏移地址决定 寻址方式:寻找或地址的方式INTR/INTA 可屏蔽中断请求/中断响应信号独立编址:由存储器的I/O端口有各自独立的地址空间,访问I/0需要的I/0指令程序设计题:1编写计算下面函数值的程序: 1X>0Y= 0X=0 -1X<0DATA SEGMENTX DB -10Y DB ?DATA ENDSSRACK SEGMENT STACKDB 200DUP(0)STACK ENDSCODE SEGMENTASSUME DS:DATA,SS:STACK,CS:CODESTART:MOV AX,DATAMOV DS,AXCMP X,0JGE A1MOV Y,-1JMP EXITA1: JG A2MOVY,0JMPEXITA2:MOVY,1EXIT:MOVAH,4CHINT 21HCODEENDSEND START2。试编一程序,求三个带符号字数据中的最大值,并将最大值存入MAX字单元中。STAC SEGMENT STACKDB 200 DUP(0)STACKENDSDATASEGMENTXDW 00ABHYDW -5ZDW 200MAX DW ?DATAENDSCODESEGMENTASSUME DS:DATA,SS:STACK,CS:CODESTART:MOVAX,DATA MOVDS,AXMOVAX,XCMPAX,Y;JGL1MOVAX,YCMPAX,ZJGEXITL2:MOVAX,ZJMPEXITL1:CMPAX,ZJLEL2EXIT:MOVMAX,AXMOVAH,4CHINT21HCODEENDSEND START3编写程序完成求123N的累加和,直到累加和超过1000为止。统计被累加的自然数的个数送CN单元,累加和送SUM。DATASEGMENTSUMDW?CNDW?DATAENDSCODESEGMENTASSUME CS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXMOVAX,0MOVBX,0LP:INCBXADDAX,BXCMPAX,1000JBELPMOVSUM,AXMOVCN,BXMOVAH,4CHINT21HCODEENDSENDSTART4 编写一汇编程序,将正数N插入到一个已排序的字数组的正确位置。该数组的首地址和末地址分别为ARRAY-HEAD和ARRAY-END,其中所以的数均为正数,且已按增序排列。(例:取数组为3、5、15、23、37、49、52、65、78、99、105)xdw?array_headdw 3、5、15、23、37、49、52、65、78、99array_enddw 105ndw 32Mov ax,nMov array_head-2,offffhMovsi,0Compare:Cmparray_endsi,axJleinsertMovbx,array_endsiMovarray_endsi+2,bxSubsi,2Jmpshort compareInsert:Movarray_endsi+2,ax5 编写一程序,把从键盘输入的一个小写字母用大写字母显示出来。NAME TURNDSEG SEGMENTA DB 'PLEASE INPUT (az):','$'B DB 0AH,0DH,'$'DSEG ENDSSSEG SEGMENT STACKDB 90H DUP(?)SSEG ENDSCSEG SEGMENTASSUME CS:CSEG,DS:DSEG,SS:SSEGSTART: MOV AX,DSEGMOV DS,AXMOV DX,OFFSET A/提示输入MOV AH,09HINT 21HMOV AH,01H INT 21HMOV BL,ALSUB BL,20H/转换MOV DX,OFFSET BMOV AH,09HINT 21HMOV DL,BLMOV AH,02INT 21H/输出MOV AH,4CHINT 21H/结束CSEG ENDSEND START6 采用查表法,实现一位十六进制数转换为ASCII 码显示。ASCII:db 30h,31h,32h,33h,34h,35h,36h,37hdb 38h,39h,41h,42h,43h,44h,45h,46hHex:db 04h,0bhmov bx,offset ASCIImoval,hexandal,0fhxlatmov dl,almovah,2int21h7.写程序段:在ds和es段分别定义了20个字符的字符串buf1和buf2,比较这两个字符串,如相等转match执行,否则转nmatch执行。用串操作指令实现。DATA SEGMENT STRING1 DB'ABCDEFG$' COUNT1 EQU $-buf1 STRING2 DB'ABCDEDG$' COUNT2 EQU $-buf2 S0 DB' MATCH$' S1 DB' NOT MATCH$' SHIFT DB 0DH,0AH,'$'DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,ES:DATA GO: MOV AX,DATA MOV DS,AX MOV ES,AX MOV DX,OFFSET buf1;显示字符串1 MOV AH,09H INT 21H MOV DX,OFFSET SHIFT;回车换行 INT 21H MOV

    注意事项

    本文(微机汇编.doc)为本站会员(1595****071)主动上传,得力文库 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知得力文库 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于得利文库 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

    © 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

    黑龙江省互联网违法和不良信息举报
    举报电话:0468-3380021 邮箱:hgswwxb@163.com  

    收起
    展开