对单片机的累加器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
利用人工智能进行个性化酿造 吸引了不少眼球
市电级ZVS制作图解
华为荣耀8青春版上市只需1099
我们有必要需要自动驾驶车辆吗
一文解读车规3D触控
单片机累加器A的逻辑操作方法介绍
力传感器如何在机器人上应用
找方案|世平安森美NCP1345用于离线 USB-PD 和 USB Type-C 电源转换器的高度集成准谐振反激式方案
安科瑞智慧用电在养老院中的应用
Emcore推出针对各种远距离信号传输应用而设计的新款EDFA和前置放大器
深圳施工工地扬尘TSP 雾霾治理措施有哪些?
赛灵思致力于打造灵活应变、万物智能世界的深度学习解决方案
对经受热失控的电芯的安全行为进行量化
空客A350XWB宽体飞机已获得了959架确认订单
MAX5963 双通道、7.5V至76V、热插拔控制器和二极
脉冲信号发生器原理_脉冲信号发生器应用领域
电冰箱温控器代用装置
车身稳定系统的作用及组成
针型阀的工作原理
电池修复技术-关于充电绝对明细的细节3-3