例42将40H单元的高、低半字节的两个BCD码拆开并变 成其ASCI码,并分别存入41H和42H单元 方法二:采用BCD数除以10H的方法,可把处于高、低半字节的两个BCD 码分别移到A和B的低4位,然后再各自与30H相“或”即变为ASCI码。参 考程序如下 ORG 2000H MOV A, 40H 取数 Mov B, #10H ;送被除数 DⅣVAB 分离高、低半字节 ORL B, #30H 低4位调整为ASCI码 MOV 42H, B ORL A, #30H ;高4位调整为ASCI码 MOV 41H, A END
方法二:采用BCD数除以10H的方法,可把处于高、低半字节的两个BCD 码分别移到A和B的低4位,然后再各自与30H相“或”即变为ASCII码。参 考程序如下: ORG 2000H MOV A,40H ;取数 MOV B,#10H ;送被除数 DIV AB ;分离高、低半字节 ORL B,#30H ;低4位调整为ASCII码 MOV 42H,B ORL A,#30H ;高4位调整为ASCII码 MOV 41H,A END 例4-2 将40H单元的高、低半字节的两个BCD码拆开并变 成其ASCII码,并分别存入41H和42H单元
例求两个8位无符号数的和。 设两个8位无符号数分别存放在内部RAM20H和21H单元,所求和(不超 过255)存放在22H单元。 ORG 2000H START MOV RO, #20H MOV A, aRO INC RO ADD A, aRO INC RO MOV aRO, A SJMP S END
例 求两个8位无符号数的和。 设两个8位无符号数分别存放在内部RAM 20H和21H单元,所求和(不超 过255)存放在22H单元。 ORG 2000H START: MOV R0,#20H MOV A,@R0 INC R0 ADD A,@R0 INC R0 MOV @R0,A SJMP $ END
42.5循环程序设计 ∈开始) 开始) 循环初态 初始化部分 初始化部分 环体 循环控制部分 处理部分 修改控制变量 「修改控制变量1} 循环控制部分 条件成立? 循环结束? 结束部分 匚处理部分 结束部分 结束 循环体 结束) (a)
4.2.5 循环程序设计 循环初态
循环程序一般由四个主要部分组成: (1)初始化部分:为循环程序做准备,如规定循环次数、给 各变量和地址指针预置初值。 (2)处理部分:为反复执行的程序段,是循环程序的实体,也 是循环程序的主体。 (3)循环控制部分:这部分的作用是修改循环变量和控制变 量,并判断循环是否结束,直到符合结束条件时,跳出循环为止 (4)结束部分:这部分主要是对循环程序的结果进行分析、 处理和存放
循环程序一般由四个主要部分组成: (1) 初始化部分: 为循环程序做准备, 如规定循环次数、 给 各变量和地址指针预置初值。 (2) 处理部分: 为反复执行的程序段, 是循环程序的实体, 也 是循环程序的主体。 (3) 循环控制部分: 这部分的作用是修改循环变量和控制变 量, 并判断循环是否结束, 直到符合结束条件时, 跳出循环为止。 (4) 结束部分: 这部分主要是对循环程序的结果进行分析、 处理和存放
循环:单重循环 多重循环(二重以上)一一循环嵌套。 在多重循环程序中,只允许外重循环嵌套内重循环程 序,而不允许循环体互相交叉,另外,也不允许从循环程序 的外部跳入循环程序的内部
循环:单重循环 多重循环(二重以上)--循环嵌套。 在多重循环程序中,只允许外重循环嵌套内重循环程 序,而不允许循环体互相交叉,另外,也不允许从循环程序 的外部跳入循环程序的内部