80c51单片机有位处理功能,可以对数据位进行操作,因此就有相应的位寻址方式。所谓位寻址,就是对内部ram或可位寻址的特殊功能寄存器sfr内的某个位,直接加以置位为1或复位为0。
位寻址的范围,也就是哪些部份可以进行位寻址:
1、我们在第十二课学习51单片机的存储器结构时,我们已知道在单片机的内部数据存储器ram的低128单元中有一个区域叫位寻址区。它的单元地址是20h-2fh。共有16个单元,一个单元是8位,所以位寻址区共有128位。这128位都单独有一个位地址,其位地址的名字就是00h-7fh。
这里就有一个比较麻烦的问题需要大家理解清楚了。我们在前面的学习中00h、01h。。。。7fh等等,所表示的都是一个字节(或者叫单元地址),而在这里,这些数据都变成了位地址。我们在指令中,或者在程序中如何来区分它是一个单元地址还是一个位地址呢?这个问题,也就是我们现在正在研究的位寻址的一个重要问题。其实,区分这些数据是位地址还是单元地址,我们都有相应的指令形式的。这个问题我们在后面的指令系统学习中再加以论述。
2、对专用寄存器位寻址。这里要说明一下,不是所有的专用寄存器都可以位寻址的。具体哪些专用寄存器可以哪些专用寄存器不可以,请大家回头去看看我们前面关于专用寄存器的相关文章。一般来说,地址单元可以被8整除的专用寄存器,通常都可以进行位寻址,当然并不是全部,大家在应用当中应引起注意。
专用寄存器的位寻址表示方法:
下面我们以程序状态字psw来进行说明
d7
d6
d5
d4
d3
d2
d1
d0
cy
ac
f0
rs1
rs0
ov
p
1、直接使用位地址表示:看上表,psw的第五位地址是d5,所以可以表示为d5h
mov c,d5h
2、位名称表示:表示该位的名称,例如psw的位5是f0,所以可以用f0表示
mov c,f0
3、单元(字节)地址加位表示:d0h单元位5,表示为doh.5
mov c,d0h.5
4、专用寄存器符号加位表示:例如psw.5
mov c,psw.5
这四种方法实现的功能都是相同的,只是表述的方式不同而已。
来源;21ic
台积电资本支出不下调 3nm明年开始试产
华硕发布新变形笔记本:平板笔记本二合一 触摸屏+触控笔
空气开关为什么会烧坏及维修方法
一维信号小波阈值去噪
小米4S手机拆解 做工及用料如何
80C51单片机实现专用寄存器位寻址的设计方案
AI大模型竞争白热化,算力优化才是“超车点”?
王思聪的“百万电脑”也迷信“AMD YES”?英特尔与AMD高端之争愈演愈烈
家庭监控系统设计
高压瓷介电容和安规电容有什么区别呢?
区块链硬币或代币的想法可能是一个新的概念
华为实现14nm以上工艺的EDA工具
10.23|豪力士智能锁新品亮相上海世界五金大会,央视助阵,盛况空前
我国AI领域全球最具影响力机构前100有哪些机构?
特斯拉二季度营收同比增长41.6% 电池短缺造成巨大损失
双目立体匹配的四个步骤解析
PIC单片机对机器人的控制程序设计
给植物纹上“传感器纹身”,可随时测量农作物的用水量
靓货多多Agilent4278A电容计HP4278A
大比特家电IC研讨会报名火热 富士通展示家电触控新方案