南邮微机汇编习题ppt课件.ppt_第1页
南邮微机汇编习题ppt课件.ppt_第2页
南邮微机汇编习题ppt课件.ppt_第3页
南邮微机汇编习题ppt课件.ppt_第4页
南邮微机汇编习题ppt课件.ppt_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

一 选择题1 8086 8088的存储器组织是将存储器分段 可作为段起始地址的是 A 185A2HB 00020HC 01004HD 0A568H2 堆栈段中当前出栈的存储单元地址是 A SS 10H SPB SS 10H BPC SS 10 SPD SS 10 BP3 设DL 55H 执行指令后能使DL中的数据为0AAH的指令是 A TESTDL 0AAHB ORDL 0AAHC NEGDLD XORDL 0FFH 1 4 当SS 9876H SP 4328H 执行POPF指令后 堆栈顶部的物理地址是 A 9CA8AHB 9CA90HC 9CA86HD 0DB00H5 DW10HDUP 2DUP 3 300H 上述定义的数据单元中 能构成0303字存储单元的个数是 A 10HB 20HC 1EHD 0FH6 用一条指令实现将寄存器BX和SI的内容相加 结果并送入AX中 这条指令是 A ADDAX BX SI B MOVAX BX SI C ANDAX BX SI D LEAAX BX SI 2 7 设AX中有一带符号数8520H 执行SARAX 1指令后 AX中的值是 A 4290HB 0A40HC 0C290HD 0C260H8 下列指令执行后 能影响标志位的是 A PUSHFB POPFC JNLEOPRD LOOPZLOP9 循环控制指令LOOPNZ LOOPNE继续执行循环的条件是 A CX 0且ZF 1B CX 0且ZF 0C CX 0或ZF 1D CX 0或ZF 0 3 10 下面两条传送指令中源操作数的寻址方式是 VAR1DW32HVAR2EQU32H MOVAX VAR1MOVBX VAR2A 都是立即寻址方式B 前一条是立即寻址 后一条是直接寻址C 前一条是直接寻址 后一条是立即寻址D 都是直接寻址 4 11 设AX 0CCBBH CF 1ANDAX 7FFEHRCRAX 1上述两条指令执行后 AX和CF中的内容分别是什么 A AX 265DHCF 0B AX 265DHCF 1C AX A65DHCF 0D AX A65DHCF 112 为在一连续的存储单元中依次存放41H 42H 48H 下面的数据定义语句中有语法错误的是 A DB41H 42H 43H 44H 45H 46H 47H 48HB DW4142H 4344H 4546H 4748HC DB ABCDEFGH D DW BA DC FE HG 5 二 简答题1 设BX 0FFFFH DI 20H DS 2000H CL 8 20020H 4567H 下列各条指令分别执行后BX中的内容是什么 A ROLBX CLBX B MOVBX DI BX 2 DATA1DB1 2 3 4DATA2DW3412H 4567H MOVAX DATA1 1 将DAT1 1的字单元的内容送入AXMOVBL DATA2 1 将DAT2 1的字节单元的内容送入BL上述两条MOV指令有语法错误 请按要求改正 0FFFFH 4567H MOVAX WORDPTRDATA1 1 MOVBL BYTEPTRDATA1 1 6 三 程序分析题1 DAT1DW1F28HDAT2DB XORBL BLMOVAX DAT1LOP ANDAX AXJZKKSHLAX 1JNCLOPADDBL 1JMPLOPKK MOVDAT2 BL执行完后 DAT2中的内容是什么 在程序功能不变的情况下 可否用SHR指令代替SHL指令 统计 1 的个数 DAT1 7 可以用SHR代替 7 2 DAT1DB87HDAT2DB MOVAH 0MOVAL DAT1MOVCL 4SHRAL CLMOVDL 10MULDLMOVBL DAT1ANDBL 0FHADDAL BLMOVDAT2 AL执行完后 DAT2中的内容是什么 在程序功能不变的情况下 可否用SAR指令代替SHR指令 87 16 10的低8位 87 的低4位 不可以用SAR代替 8 3 MOVAL BLNOTALXORAL BLORBL AL程序执行完后 AL BL AL 11111111B BL 11111111B 9 4 STCMOVCX 0403HMOVAX 0A433HSHRAX CLXCHGCH CLSHLAX CL程序执行完后 AX CF AX 0433H 3 16 4860HCF 1 10 5 BYTE1DBXX 任意数BYTE2EQU0FEH MOVDL BYTE1ORDL BYTE2程序执行完后 DL 或 DL FF或FE 11 6 DA BDB0CH 9 8 0FH 0EH 0AH 2 3 7 4 XORAX AXXORCL CLXORBX BXLOP TESTDA B BX 01HJENEXTADDAL DA B BX INCAHNEXT INCBXINCCLCMPCL 10JNELOP程序执行完后 AH AL 如果把JENEXT改为JNENEXT那么AH AL AH 4 奇数个数 AL 9 0FH 3 7 奇数和 12 7 VAR BDB10DUP 3 5 7 9 LEABX VAR BMOVCX 10XORAX AXLOP ADDAL BX CMPAL 10JBNEXTINCAHSUBAL 10NEXT INCBXLOOPLOP程序执行完后 AH AL 求前10个数中十位数和个位数 AH 5 十位数 AL 6 个位数 13 四 程序填空题1 某程序段欲用单个字符显示的2号DOS功能调用去显示一字符串 STRING 试在下面空白处添上适当的指令 STR1DB STRING MOVBX OFFSETSTR1LOP MOVDL BX MOVAH 2INT21H JNELOP INCBX CMPDL 14 2 该程序段的功能是依次产生0 9的10个ASC 码 并存入BUF1数据区 请在空白处添上指令 BUF1DB10DUP LEABX BUF1MOVCX 10XORAL ALLOP MOVAH ALADDAL 30H INCBX INCALLOOPLOP MOV BX AL SUBAL 30H 15 五 编制程序1 把两个非压缩BCD码组合为一个压缩BCD码 并存入DA3中 DA1DBXX 高位非压缩BCD码DA2DBXX 低位非压缩BCD码DA3DB 2 已知DAT1字节单元有一个数据 编制一程序将该数据的低4位变为1010B 最高位 第7位 置1 其余3位不变 结果送DAT2单元 16 3 在N1和N2两数据区中 分别有10H个带符号数 试编制一源程序 找出对应项中较小的数据 并将这些数据存入N3数据区中 要求 对应项比较时必须用CMPS指令 DATASEGMENTN1DBXX XX XX N2DBXX XX XX N3DB10DUP 0 DATAENDS 17 例1 下面的程序执行后 AX DX CS 2000HMOVAX 2012H2003HMOVCX 200CH2006HPUSHCX2007HCALL4000H200AHADDAX BX200CHADDAX DX200EHHLT CS 4000HMOVBX 200AHPOPDXRET AX 401CDX 200A 18 SS 0000 SP 200C 200A CX IP 例1 下面的程序执行后 AX DX CS 2000HMOVAX 2012H2003HMOVCX 200CH2006HPUSHCX2007HCALL4000H200AHADDAX BX200CHADDAX DX200EHHLT CS 4000HMOVBX 200AHPOPDXRET AX 401CDX 200A 19 例2 下列指令中哪正确的 哪些是错误的 不能对代码段寄存器CS进行写操作 xchgcs axmovax csmovcs axmov bx 1000 pushcspopcspushipmovbyteptr bx 1000mov bx 5movcs 1000 movdx 1000movax dx moval bxaddes axmovss csinc bx 不能对代码段寄存器CS进行写操作 mov等指令的两个操作数不能同时为存储器操作数 不能对代码段寄存器CS进行写操作 不能对指令指针寄存器Ip进行任何操作 字不能往字节单元里送 未区分往 bx 中送的数是字还是字节 不能对代码段寄存器CS进行写操作 DX不能做地址寄存器 寄存器不匹配 算术运算指令中段寄存器不能做操作数 不能在两个段寄存器之间传送数据 没有定义操作数的大小 20 MOVAX BX BP MOVAX DI SI 没有这种寻址方式 没有这种寻址方式 21 例3 请求出AL中 1 的个数 存在AH中 MOVAH 0Again SHLAL 1ADCAH 0CMPAL 0JNZAgainHLT MOVAH 0MOVCL 8Again SHLAL 1JNCNextINCAHNext DECCLJNZAgainHLT 22 例4 若自Block开始的内存中有100个带符号数 找出最大值存入Max单元 Block 65F3020024E00500 MOVBX OffsetBlockMOVAX BX INCBXINCBXMOVCX 100Again CMPAX BX JGNEXTMOVAX BX Next INCBXINCBXDECCXJNZAgainMOVMAX AXHLT Max 23 例5 数组ARRAY为N字数组 要求将其中正数 负数 0的个数统计出来 分别存入寄存器DI AX SI中 XORBX BXXORSI SIXORDI DIMOVCX Nagain CMPARRAY BX 0JLEless or eqPUSHFINCDIPOPFLess or eq JLNEXTINCSInext ADDBX 2DECCXJNZAGAINMOVAX NSUBAX SISUBAX DIHLT OSZAPC 001011001 05A2001085239002 array cmp 24 例6 若在0500H单元有一个数x 将其高4位变为1 低4位维持不变 moval 0500 andal f0hmov 0500 al 例7 将AL的高4位与低4位互换 MOVCL 4ROLAL CL 25 例8 将1A00H内存单元中的双字循环左移1位 CLCRCLWORDPTR 1A02H 1RCLWORDPTR 1A00H 1 C OPRD C OPRD 1A02 1A00 26 movah 4chint21hMainendpCodeendsendbegin BX 1010110001011001 00001111 1100010110011010 00001010 Codesegmentassumecs codeBegin movch 4movcl 4Rotate rolbx clmoval blandal 0fhaddal 30hcmpal 3ahjlprintfaddal 7hPrintf movah 2movdl alint21hDecchJnzrotate 例9 将BX寄存器中的二进制数以十六进制的形式在显示器上显示出来 27 例10 将二进制数串转换成ASC码 并在屏幕上显示 DatasegmentNumdw4f78h 0100111101111000Stringdb16dup DataendsCodesegmentassumecs code ds dataBegin movax datamovds axleadi stringmovbx nummovcx 16 again rolbx 1jncnextmovbyteptr di 31hnext movbyteptr di 30hincdiloopagainmovah 4chint21hstartendpcodeendsendbegin 28 DatasegmentNumdb7dup DataendsCodesegmentassumecs code ds dataBegin movax datamovds axleasi nummovax bxmovbx 10movcx 1 例11 若在BX中有一个16位无符号数 把它们转换为相应的BCD码 放到自Data开始的存储区中 每一位BCD码占一个存储单元 高位在前 First xordx dxdivbxpushdxcmpax 0jzsecondinccxjmpfirstSecond popaxmov si alincsiloopsecondmovah 4chint21hStartendpCodeendsendbegin 29 DATASEGMENTSTRDB THISISASTRING LENDW DATAENDSCODESEGMENTASSUMECS CODE DS DATABEGIN MOVAX DATAMOVDS AXMOVCX 0LEABX STR AGAIN MOVAL BX CMPAL JZHALTINCCXINCBXJMPAGAINHALT MOVLEN CXMOVAH 4CHINT21HSTARTENDPCODEENDSENDBEGIN 例12 有一以 结束的字串 请求出它的长度 30 例13 计算N N N 1 N 2 1 递归

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论