当前位置:首页 > C语言 >

汇编语言流水灯

发布时间:2023-11-20 09:16:29 作者:佚名 阅读:(70)

最近有个小伙伴在学习汇编语言说有个习题是汇编语言编写一个流水灯的程序,接下来云梦编程就为大家介绍一下使用汇编语言编写流水灯的程序代码,有需要的小伙伴可以参考一下:

汇编语言流水灯

1、文件说明:

    流水灯汇编语言

2、程序说明:

    MCU采用AT89S51,外接11.0592M晶振,P2口输出

3、程序代码:

	u     左移依次循环:
	 
	                ORG 0000H        
	            SJMP MAIN        
	            ORG 0030H       主程序开始的地址
	MAIN:       MOV R2,#08H      设置循环次数
	            MOV A,#0FEH         赋初值
	NEXT:       MOV P2,A           把初值送到P2口
	            LCALL DELAY          延时
	            RL A                 左移一位
	            DJNZ R2,NEXT      判断循环次数是否到,没有跳转到NEXT继续执行
	                     SJMP MAIN           重复循环
	DELAY:           MOV R3,#0FFH          延时程序
	DEL2:             MOV R4,#0FFH     
	DEL1:             NOP              
	                     DJNZ R4,DEL1     
	                     DJNZ R3,DEL2     
	                     RET              
	                     END                      结束
	   
	u     二边散开后缩进(查表指令)
	                    ORG 0000H           
	                    SJMP MAIN           
	                    ORG 0030H           
	MAIN:           MOV SP,#60H         
	                MOV DPTR,#TAB          把表首地址送到DPTR
	                MOV R2,#06              设置循环次数
	LOOP:           CLR A                          清零A
	                MOVC A,@A+DPTR         查表指令
	                    MOV P1,A           把A中的值送到P1口
	                    LCALL DELAY                延时
	                    INC DPTR                  改变数据指针
	                  DJNZ R2,LOOP 判断循环是否到,没有跳转LOOP
	                    SJMP MAIN                  重复循环
	DELAY:          MOV R0.#10                  延时
	DEL2:          MOV R1,#200         
	DEL1:          MOV R3,#255         
	                    DJNZ R3,$          
	                    DJNZ R1,DEL1       
	                    DJNZ R0,DEL2       
	                    RET
	TAB:      DB 0E7H,0DBH,0BDH,7EH,0BDH,0DBH    查表                   
	                   END

以上就是云梦编程为大家介绍的关于汇编语言编写的流水灯的程序代码,了解更多相关文章请关注云梦编程!

© 2023 - 云梦编程网 版权所有 鲁ICP备2021017318号-4