CLK equ P1.1 CLK 相当于 P1.1
mov a, #55h Acc ←#55H
setb CLK P1.1= 1,高电平
mov r7, #8 R7 ← #8
rrc a Acc带进位循环右移1位,Acc最缓哪猜低位移入Cy
mov DAT, c DAT←Cy(即Acc右移前的最低位)
clr CLK P1.1 =0, 低电扰型平
setb CLK P1.1= 1,高电平
djnz r7, Next R7递减1转Next处循环,当R7递减至0则循环结束
ljmp $‘踏步’
end程序结束
整体程序有何功能,须知道单片机的P1.1引脚与什么元件连接,才可确缓烂定。
CODE SEGMENT ;代码段开始声明ASSUME CS:CODE ;ASSUME:段分配伪指令定义CODE为代码段
START:MOV AX,0H;开始执行 0H赋给AX
MOV DS,AX
MOV BX,2000H
MOV AX,55AAH
MOV CX,03FFH
RAMW1:MOV DS:[BX],AX ;RAMW1 标号 将AX中内容赋给物理地址
;为16*DS+BX的内存单元中
ADD BX,0002H;BX+0002H,和送到BX
LOOP RAMW1;循环指令 执行一次CX中数据-1,执行一手凯次标号为RAMW1中
; 指派老令,CX减到0时退出循环
MOV AX,2000H
MOV SI,AX
MOV AX,3000H
MOV DI,AX
MOV CX,03FFH
CLD;方向标志位DF清零
REP MOVSB;重复传送串中是字节,直到CX=0;
RAMW2:JMP RAMW2;RAMW2 标号 程序无条尘薯升件转移到标号为RAMW2的指令中
CODE ENDS;结束CODE段
END START;语句结束
xxxx0是个十六进制数,最后一位是0的话转换为十进制定会被16整除, 不信你试试,这是因为前四位型散分别是16的倍数,最后一位是0,加起来还是16的倍数。堆栈是一种悄州形象的说法,sp指针指向某一地址,成为栈底,数据从栈底开始卜运氏向上保存,取出的时候按照后进先出的原则,实际是一种保护数据的方式,在微机原理中很重要。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)