微机原理与接口技术 微机原理与接口技术 朱华贵 2015年11月13日
微机原理与接口技术 实验三 汇编程序设计3 朱华贵 2015年11月13日
分支程序设计 一、实验目的 1.利用测试与转移指令实现分支。 2.利用比较与转移指令实现分支。 二、实验内容与要求 程序设计方法:在需要分支的地方用逻辑测试指令TEST进行分支条件的测试判断,再利用各种条件转移指令实现程序分支。 程序设计方法:在需要分支的地方用两数的比较指令CMP,或串比较指令CMPS等 进行分支条件的比较判断,再利用转移指令(如JNZ、JNC、JA、JB等)实现程序的分支。
要求自编程序实现 1.在BLOCK开始的内存单元中有若干以字节为单位的正、负数,自编程序,试统计其中≧0的个数存放于M_DATA单元中,<0的个数存放于P_DATA单元中。 2.在BLOCK开始的内存单元中有若干以字节为单位的奇、偶数,自编程序,试统计其中偶数的个数存放于M_DATA单元中,奇数的个数存放于P_DATA单元中。
参考程序 DATA SEGMENT BLOCK DB 37,-90,-32,60,-7,-120 COUNT EQU $-BLOCK P_DATA DB COUNT DUP (0) M_DATA DB COUNT DUP (0) DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX
LEA SI,BLOCK LEA DI,P_DATA LEA BX,M_DATA MOV CX,COUNT NEXT: MOV AL,[SI] CMP AL,0 JGE PP MOV [BX],AL INC BX JMP LOOP1 PP: MOV [DI],AL INC DI LOOP1: INC SI LOOP NEXT
CODE ENDS END START
四.思考题 1、如果将比较指令改为测试指令(加下划线处),程序需做哪些改动? 2、将上述程序修改实现单元中数据奇数、偶数个数的统计。