汇编语言程序设计技巧详解(附例题) |
您所在的位置:网站首页 › c程序设计例题 › 汇编语言程序设计技巧详解(附例题) |
目录 1、顺序结构 2、分支结构 (1)先建立可供条件转移指令测试的条件。 (2)选用合适的条件转移指令。 (3)在转移的目的地址处设定标号。 多重分支程序 a.多次使用条件转移指令,形成两个以上判断框。 b.按分支号转移 (1)用地址表法。设分支号已存入A。 (2)转移表法。用分支转移指令 JMP @A+DPTR 3、循环结构 (1)循环初始化 (2)循环体 (3)循环控制 多重循环循环体中套循环结构 4、子程序 (1)子程序入口用标号作为子程序名。 (2)调用子程序之前设置好堆栈。 (3)用返回指令RET结束子程序,并保证堆栈栈顶为调用程序的返回地址。 (4)子程序嵌套须考虑堆栈容量。 (5)提供足够的调用信息: 1.寄存器传送参数 2.存储器传送参数 3.堆栈传送参数 模块化设计 汇编语言程序设计技巧 四种基本结构:顺序结构、分支结构、循环结构和子程序。 1、顺序结构【例】将R0单元内的两位BCD码拆开并转换成ASCII码,存入RAM两个单元中R2 (存高位)和R1 (存低位)中 。 参考程序: ORG 2000H MOV A,R0 ;取值 ANL A,#0FH ;取低4位 ADD A,#30H ;转换成ASCII码 MOV R1,A ;保存结果 MOV A,R0 ;取值 SWAP A ;高4位与低4位互换 ANL A,#0FH ;取原来的高4位 ADD A,#30H ;转换成ASCII码 MOV R2,A ;保存结果 SJMP $ END 2、分支结构 (1)先建立可供条件转移指令测试的条件。 (2)选用合适的条件转移指令。 (3)在转移的目的地址处设定标号。【例】求R2中补码绝对值,正数不变,负数变补。 MOV A,R2 JNB ACC.7,NEXT;为正数? CPL A ;负数变补 INC A MOV R2,A NEXT:SJMP NEXT ;结束 多重分支程序 a.多次使用条件转移指令,形成两个以上判断框。【例】 求符号函数Y=SGN(X) +1 当 X>0 SGN(X)= 0 当 X=0 -1 当 X |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |