[微机原理课件第7讲.pptVIP

  • 16
  • 0
  • 约2.05万字
  • 约 69页
  • 2017-01-07 发布于北京
  • 举报
[微机原理课件第7讲

第3章 8086的寻址方式和指令系统 串处理指令 ①MOVS字符串传送指令 ①MOVS字符串传送指令 ②CMPS字符串比较指令 ②CMPS字符串比较指令 ③SCAS字符串扫描指令 ③SCAS字符串扫描指令 ④LODS取字符串指令 ⑤STOS存字符串指令 控制转移指令 控制转移指令(28条) 无条件转移和过程控制指令 无条件转移 偏移量 机器码 程序 0000 CODE SEGMENT ASSUME CS:CODE 0000 0405 PROG_S: ADD AL,05H 0002 90 NOP 0003 EBFB JMP SHORT PROG_S 0005 90 NOP 0006 CODE ENDS END ①JMP无条件转移指令 ①JMP无条件转移指令 ①JMP无条件转移指令 段内间接转移指令 段间直接(远)转移指令 段间间接转移指令 过程调用及返回指令 过程:程序中能完成特定功能而又独立的模块,也称子程序。 过程嵌套:在过程运行中又去调用另一个过程。 过程调用和返回指令的格式:CALL 过程名 RET 近过程调用:调用指令CALL和被调用的过程在同一代码段中。 远过程调用:两者在不同代码段中。 ②CALL过程调用指令 ③RET过程返回指令 ④RET n过程返回指令 ④RET n过程返回指令 过程调用与返回指令 过程调用与返回指令 CALL段内直接调用 CS=2000H,IP=1050H,SS=5000H ①SP ?SP-2,即新的SP=0100H-2=00FEH; ②返回地址IP入栈。返回地址应该为CALL执行完后的地址,即IP=IP+3=1053H,将此数入栈; ③计算程序入口地址IP=IP+DISP=1053+1234=2287H。 过程调用与返回指令 过程调用与返回指令 过程调用与返回指令 条件转移指令 直接标志转移指令 在指令助记符中直接给出标志状态的测试条件:以标志的10种状态为判断的条件。 直接标志转移指令 间接标志转移指令 指令的助记符中不直接给出标志状态位的测试条件,而是标志的状态组合作为测试的条件。 指令应用:通常放在比较指令CMP之后,以比较两个数的大小。 无符号数比较测试指令中 指令助记符中的“A”——Above,“B”——Below; 带符号数比较测试指令中,指令助记符中的 “G”(Great than)表示大于, “L”(Less than)表示小于。 间接标志转移指令 间接标志转移指令 条件循环控制指令 条件循环控制指令 ①LOOP循环指令 ②LOOPE/LOOPZ相等或结果为零时循环指令 ③LOOPNE/LOOPNZ不相等或结果为不零时循环指令 有一个首地址为ARRAY的M字数组,试编写一个程序:求出该数组的内容之和(不考虑溢出),并把结果存入TOTAL中。 循环例子 有一串L个字符的字符串存储于首地址为ASCII_STR的存储区中。如要求在字符串中查找“空格”(ASCII码为20H)字符,找到则继续执行;如未找到则转到NOT_FOUND去执行,编程实现这一要求的程序. ④JCXZ若CX为0跳转指令 中断指令 中断 专用中断 中断 中断 ①INT n软件中断指令 ②INTO溢出中断指令 在带符号加减法运算之后必须安排一条INTO指令。以保证出现溢出时能及时向CPU提出中断请求并进行处理,否则,即使出现溢出也不会向CPU发中断申请。 例子 ADD AX,VALUE INTO ③IRET中断返回指令 处理器控制指令 标志控制指令 外部同步指令 ①ESC换码指令 ②WAIT等待指令 ③LOCK封锁总线指令 停机指令和空操作指令 停机指令和空操作指

文档评论(0)

1亿VIP精品文档

相关文档