如果是电源开关,那么汇编程序好写。
程序如下:
P2口送位控制,P0口送显示数据(P1.0——P1.6对应数码管abcdefg),用于共阳数码管,
ORG 0000H;跳过中断入口
LJMP START;
ORG 0030H;主程序开始
START:MOV SP,#60;初始化堆栈
MOV DPTR,#TAB;显示数据表格首址送数据指针
MOV R0,#0FEH;位控制寄存器
MOV R1,#0;取码寄存器
MOV P2,#0FFH;
MOV R4,#255;延时控制
MOV P0,#0FFH;
MOV R2,#8;要显示8个数,既8个数码管同时显示01234567;
L1:MOV A,R1;
MOVC A,@A+DPTR;
MOV P0,A;送显示数据
MOV P2,R0;送位控制
DJNZ R4,$;延时
MOV P2,#0FFH;关显示
INC R1;显示下一个数据,
MOV A,R0;
RL A;下一位数码管显示
MOV R0,A;
DJNZ R2,L1;
AJMP START;
TAB:DB 0C0H;0
DB 0F9H;1
DB 0A4H;2
DB 0B0H;3
DB 99H; 4
DB 92H; 5;
DB 82H; 6
DB 0F8H;7
END
计算机自动停止。当节点数达到一定值时,默认该问题无解,停止算法。
八数码是指在3乘3的矩阵中,其中有8个格子放置成1到8,剩下一个格子是空格。能够移动和空格相邻的格子到空格,直到这个矩阵满足每一行依次从左到右读取是有序,得到最后得到1到8有序,最后一个格子是空格,空格用0来表示。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)