单片机入门教程第12课-单片机指令(五)
三、逻辑运算类指令
1、对累加器a的逻辑操作:
clr a ;将a中的值清0,单周期单字节指令,与mov a,#00h效果相同。
cpl a ;将a中的值按位取反
rl a ;将a中的值逻辑左移
rlc a ;将a中的值加上进位位进行逻辑左移
rr a ;将a中的值进行逻辑右移
rrc a ;将a中的值加上进位位进行逻辑右移
swap a ;将a中的值高、低4位交换。
例:(a)=73h,则执行cpl a,这样进行:
73h化为二进制为01110011,
逐位取反即为 10001100,也就是8ch。
rl a是将(a)中的值的第7位送到第0位,第0位送1位,依次类推。
例:a中的值为68h,执行rl a。68h化为二进制为01101000,按上图进行移动。01101000化为11010000,即d0h。
rlc a,是将(a)中的值带上进位位(c)进行移位。
例:a中的值为68h,c中的值为1,则执行rlc a
1 01101000后,结果是0 11010001,也就是c进位位的值变成了0,而(a)则变成了d1h。
rr a和rrc a就不多谈了,请大家参考上面两个例子自行练习吧。
swap a,是将a中的值的高、低4位进行交换。
例:(a)=39h,则执行swap a之后,a中的值就是93h。怎么正好是这么前后交换呢?因为这是一个16进制数,每1个16进位数字代表4个二进位。注意,如果是这样的:(a)=39,后面没h,执行swap a之后,可不是(a)=93。要将它化成二进制再算:39化为二进制是10111,也就是0001,0111高4位是0001,低4位是0111,交换后是01110001,也就是71h,即113。
练习,已知(a)=39h,执行下列指令后写出每步的结果
cpl a
rl a
clr c
rrc a
setb c
rlc a
swap a
通过前面的学习,我们已经掌握了相当一部份的指令,大家对这些枯燥的指令可能也有些厌烦了,下面让我们轻松一下,做个实验。
实验五:
org 0000h
ljmp start
org 30h
start:
mov sp,#5fh
mov a,#80h
loop:
mov p1,a
rl a
lcall delay
ljmp loop
delay:
mov r7,#255
d1: mov r6,#255
d2: nop
nop
nop
nop
djnz r6,d2
djnz r7,d1
ret
end
先让我们将程序写入片中,装进实验板,看一看现象。
看到的是一个暗点流动的现象,让我们来分析一下吧。
前而的org 0000h、ljmp start、org 30h等我们稍后分析。从start开始,mov sp,#5fh,这是初始化堆栈,在本程序中有无此句无关紧要,不过我们慢慢开始接触正规的编程,我也就慢慢给大家培养习惯吧。
mov a,#80h,将80h这个数送到a中去。干什么呢?不知道,往下看。
mov p1,a。将a中的值送到p1端口去。此时a中的值是80h,所以送出去的也就是80h,因此p1口的值是80h,也就是10000000b,通过前面的分析,我们应当知道,此时p1。7接的led是不亮的,而其它的led都是亮的,所以就形成了一个“暗点”。继续看,rl a,rl a是将a中的值进行左移,算一下,移之后的结果是什么?对了,是01h,也就是00000001b,这样,应当是接在p1。0上的led不亮,而其它的都亮了,从现象上看“暗点”流到了后面。然后是调用延时程序,这个我们很熟悉了,让这个“暗点”“暗”一会儿。然后又调转到loop处(ljmp loop)。请大家计算一下,下面该哪个灯不亮了。。。。。对了,应当是接在p1。1上灯不亮了。这样依次循环,就形成了“暗点流动”这一现象。
问题:
1、如何实现亮点流动?
2、如何改变流动的方向?
答案:
1、将a中的初始值改为7fh即可。
2、将rl a改为rr a即可。
WiLink 8Q 系列无线车载连接器件的作用
Spring Bean相关的4个注解及使用方法
新松机器人为宝马提供的砂芯智能存储及除湿系统竣工试运行
关于图片压缩的idea插件
小企业如何选择人脸识别系统
单片机入门教程第12课-单片机指令(五)
中频压控振荡器的IC简化实现
华为云桌面,高流畅低延时,给你丝滑办公体验
金其利龙芯3A5000网络安全主板:打造安全无忧的数字世界
一些有效的总线防浪涌保护解决方案介绍
关于编程的12条自问,你知道多少呢?
益莱储——让你的钱更值钱
区块链游戏“以太熊猫”玩法解析
嵌入式好用工具—软件篇
边缘计算被誉为是5G时代的下一个风口
别想了, 小米6无缘今日CES小米MIX皓月白版、小米电视4才是重点
雷蛇发布新一代游戏鼠标毒蝰8K Hz 延迟低至0.125毫秒
iPhone 12全面取消充电器!倍思推出苹果20W超级硅快充头
光合作用土壤呼吸综合测定系统产品特点介绍
与光同行,2022 WiML 全球机器学习女性研讨会邀你参与