第5章 指与指系统和汇编语言程序设计(2).ppt
《第5章 指与指系统和汇编语言程序设计(2).ppt》由会员分享,可在线阅读,更多相关《第5章 指与指系统和汇编语言程序设计(2).ppt(20页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第5 5章章指令、指令系统和汇编语言程序设计教学机的基本指令教学机的基本指令算术逻辑运算指令算术逻辑运算指令 ADD、SUB、AND、XOR、TEST、CMP、OR、DEC、INC、SHL、SHR数据移动指令数据移动指令 MVRR、MVRD、LDRR、STRR堆栈操作指令堆栈操作指令 PUSH、POP、PSHF、POPF输入输出指令输入输出指令 IN、OUT转移指令转移指令 JMPA、JR、JRC、JRNC、JRZ、JRNZ子程序调用与返回指令子程序调用与返回指令 CALA、RETMV:MOVELD:LOADST:STORE SH:SHIFTJMP:JUMPCAL:CALLRET:RETUR
2、NJR:JUMP RELATIVER:REGISTERD:DATAA:ADDRESSF:FLAGS 指令命名规则指令命名规则单字指令单字指令分为三个主要部分分为三个主要部分:高高 8 位是位是固定长度的操作码,固定长度的操作码,最多支持最多支持 256 条指令。条指令。低低 8 位位有多种用法:给出有多种用法:给出 1 或或 2 个个寄存器寄存器的编号,的编号,或或 输入输入/输出的输出的端口地址端口地址,或或 相对转移相对转移指令的指令的 8 位的偏移量。位的偏移量。双字指令双字指令的第二个字的内容的第二个字的内容可能是:可能是:立即数立即数、直接地址直接地址、变址变址偏移量。偏移量。操操
3、作作 码码 目的寄存器目的寄存器源寄存器源寄存器 I/O 端端 口口 地地 址址 相对转移指令的偏移量相对转移指令的偏移量 立即数立即数 /直接地址直接地址 /变址偏移量变址偏移量 8位位 4位位 4位位 教学机的指令格式教学机的指令格式用到的寻址方式用到的寻址方式寄存器寻址寄存器寻址寄存器间接寻址寄存器间接寻址立即数寻址立即数寻址直接地址寻址直接地址寻址变址寻址变址寻址相对寻址相对寻址堆栈寻址堆栈寻址IO端口地址端口地址指令格式指令格式汇编语句汇编语句操作数操作数个数个数CZVS指令指令类型类型功能说明功能说明00000000 DR SR00000001 DR SR00000010 DR S
4、R00000011 DR SR00000100 DR SR00000101 DR SR00000110 DR SR00000111 DRSR00001000 DR000000001001 DR000000001010 DR000000001011 DR000001000001 OFFSET01000100 OFFSET01000101 OFFSET01000110 OFFSET01000111 OFFSETADD DR,SRSUB DR,SRAND DR,SRCMP DR,SRXOR DR,SRTEST DR,SROR DR,SRMVRR DR,SRDEC DRINC DRSHL DRSHR
5、DRJR ADRJRC ADRJRNC ADRJRZ ADRJRNZ ADR22222222111111111*A组组指指令令DRDR+SRDRDRSRDRDR and SRDRSRDRDR xor SRDR and SRDRDR or SRDRSRDRDR-1DRDR+1DR,CDR*2DR,CDR/2无条件跳转到无条件跳转到ADRC=1时跳转到时跳转到 ADRC=0时跳转到时跳转到 ADRZ=1时跳转到时跳转到 ADRZ=0时跳转到时跳转到 ADRTEC-2000 16位机基本指令系统位机基本指令系统TEC-2000 16位机基本指令系统位机基本指令系统指令格式指令格式汇编语句汇编语句操作
6、数操作数个数个数CZVS指令指令类型类型功能说明功能说明10000000 0000000ADR(16位)位)10000001 DRSR10000010 I/O PORT10000011 DRSR10000100 0000000010000101 0000SR10000110 I/O PORT10000111 DR000010001000 DR0000DATA(16位)位)10001100 0000000010001111 00000000JMPA ADRLDRR DR,SRIN I/O PORTSTRR DR,SRPSHFPUSH SROUT I/O PORTPOP DRMVRD DR,DAT
7、APOPFRET12120111200*B组组指指令令无条件跳到无条件跳到ADRDRSRR0I/O PORTDRSRFLAG入栈入栈SR入栈入栈I/O PORTR0DR出栈出栈DRDATAFLAG出栈出栈子程序返回子程序返回11001110 00000000 CALA ADR 1D组组调用首地址为调用首地址为ADR的子程序的子程序1、寄存器寻址的指令、寄存器寻址的指令MVRR R1,R2 指令长度是多少?执指令长度是多少?执行时间是多少?行时间是多少?2、立即数寻址指令、立即数寻址指令MVRD R1,2003H 的指令长度是多少的指令长度是多少?(该指令有几个操作数,寄存器可以用几位数表示?立
8、即?(该指令有几个操作数,寄存器可以用几位数表示?立即数可以用几位数表示?操作码占去了几位?)数可以用几位数表示?操作码占去了几位?)3、LDRR R1,R2 指令长度是多少?执行时间是多少?指令长度是多少?执行时间是多少?4、ADD R1,2003,ADD R2,0001H ,INC R1 这三条指这三条指令格式分别是什么样?令格式分别是什么样?5、LDRA R1,2003H 和和 LDRR R1,R2 这两指令这两指令格式分别是什么样?格式分别是什么样?6、JMPA ADR和和 JR ADR有什么区别?长度是多少?有什么区别?长度是多少?思考题思考题(1)从指令的)从指令的长度长度区分区分
9、从表从表5.1中可以看出,中可以看出,(A组)组)ADD DR,SR 1字(字(DR为目标,为目标,SR为源为源)(B组)组)JMPA ADR 2字字(无条件跳转到(无条件跳转到ADR)其具体的指令可以是:其具体的指令可以是:ADD R1,R2(R2的内容和的内容和R1的内容相加,结果存入的内容相加,结果存入R1)机器码:机器码:0000 0000 0010 001JMPA 2003H(无条件跳转到内存无条件跳转到内存2003H单元)单元)机器码:机器码:10000000 0000 0000 0100 0000 0000 0011指令的分类指令的分类从表从表5.1中可以看出,中可以看出,(A组
10、)组)INC DR 单操作数单操作数(DR的的内容加内容加1)(B组)组)LDRR DR,SR 双操作数双操作数(DR -SR)其具体的指令可以是:其具体的指令可以是:INC R2(R2内容加内容加1,)机器码:机器码:0000 1001 0010 0000LDRR R1,R5(若(若R5的内容是的内容是100FH,则则100FH单元单元 的内容送到的内容送到R1)机器码:机器码:10000001 0001 0101(可见,并不是单操作数指令其指令长度就短(可见,并不是单操作数指令其指令长度就短)(2)从操作数的个数区分)从操作数的个数区分有寄存器寻址,寄存器间接寻址等有寄存器寻址,寄存器间接
11、寻址等7种。种。从表从表从表从表5.15.1中可以看出,中可以看出,中可以看出,中可以看出,(A A组)组)组)组)INC DR INC DR 单操作数单操作数单操作数单操作数(DRDR的的的的内容加内容加内容加内容加1 1)(B B组)组)组)组)LDRR DRLDRR DR,SR SR 双操作数双操作数双操作数双操作数 (DR SRDR SR)(3)从使用的寻址方式分)从使用的寻址方式分从表从表5.1中可以看出,中可以看出,(A组)组)ADD DR,SR 加运算加运算(B组)组)LDRR DR,SR 读写内存读写内存 OUT I/O PORT 输出指令输出指令 (I/O PORT R0I/
12、O PORT R0)有运算、读写内存类指令,输入输出指令,转移有运算、读写内存类指令,输入输出指令,转移有运算、读写内存类指令,输入输出指令,转移有运算、读写内存类指令,输入输出指令,转移指令,子程序调用指令,置进位标志指令等。指令,子程序调用指令,置进位标志指令等。指令,子程序调用指令,置进位标志指令等。指令,子程序调用指令,置进位标志指令等。(4)从指令的功能区分)从指令的功能区分取指取指之后之后,各组指令执行的步骤各组指令执行的步骤:A组组:1步步.寄存器寄存器之间计算和传送之间计算和传送.如如ADD DR,SRB组组:2步步.一次一次内存内存内存内存或或I/OI/O读写读写.(1)地址
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第5章 指与指系统和汇编语言程序设计2 系统 汇编语言 程序设计
限制150内