专家
公告
财富商城
电子网
旗下网站
首页
问题库
专栏
标签库
话题
专家
NEW
门户
发布
提问题
发文章
51单片机
C语言如何利用20H-2FH的位地址?
2020-01-24 11:59
发布
×
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
站内问答
/
51单片机
2646
12
12
新人请教:在语言中,能像汇编一样的利用位址吗,好像没有找到这方面的贴子。
友情提示:
此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
11条回答
chenxiongwei
1楼-- · 2020-01-25 09:08
回复【5楼】dqlspzl
-----------------------------------------------------------------------
再请教5楼的朋友,您的方法可行,想问下08以后的点写呢?
加载中...
lyxing
2楼-- · 2020-01-25 10:11
unsigned char bdata redata; //字符变量redata定位于可位寻址片内数据存储区,允许位与字节混合访问
bit bdata redata; //位变量redata定位于数据存储区中的位寻址区(20H-2FH)
加载中...
avic
3楼-- · 2020-01-25 14:07
精彩回答 2 元偷偷看……
加载中...
AIHHLI
4楼-- · 2020-01-25 18:57
回复【9楼】avic
-----------------------------------------------------------------------
也可以用联合体和位域实现,sbit尽限在51里使用,用联合体方法更通用,也更容易移植。
-------------------------------------------------------------------------------
不太明白,能不能说详细点?最好能给个例子,谢谢。
加载中...
songshanxiaozi
5楼-- · 2020-01-25 21:56
本帖最后由 songshanxiaozi 于 2014-4-8 16:58 编辑
位域的用法
typedef union
{
unsigned char xx;
struct
{
unsigned char bit0:1;
unsigned char bit1:1;
unsigned char bit2:1;
unsigned char bit3:1;
unsigned char bit4:1;
unsigned char bit5:1;
unsigned char bit6:1;
unsigned char bit7:1;
};
}BIT_FIELD;
BIT_FIELD x;
使用方法:
x.bit0=1;
x.xx=100;
想不通,既然用C语言编程,为什么还非要用20H~2FH这个位寻址区呢
加载中...
上一页
1
2
一周热门
更多
>
相关问题
【东软载波ESF0654 PDS开发板活动】开箱
1 个回答
东软载波ESF0654 PDS开发板外部中断
1 个回答
东软载波ESF0654 PDS开发板高级控制定时器AD16C4T
1 个回答
用串口调试助手为什么只能在hex模式接收发送而在文本模式不行
9 个回答
触摸芯片SC02B/SC04B在地砖灯的设计方案
1 个回答
东软载波ESF0654 PDS开发板串口USART0代码分享
1 个回答
普通32位单片机使用linux的应用代码
5 个回答
东软载波ESF0654 PDS开发板AT24C04的调试
9 个回答
相关文章
51单片机与蓝牙模块连接
0个评论
51单片机的硬件结构
0个评论
基于51单片机的无线遥控器制作
0个评论
51单片机 AD转换
0个评论
51单片机数码管递增显示
0个评论
如何实现对单片机寄存器的访问
0个评论
基于51单片机的指纹密码锁
0个评论
×
关闭
采纳回答
向帮助了您的网友说句感谢的话吧!
非常感谢!
确 认
×
关闭
编辑标签
最多设置5个标签!
51单片机
保存
关闭
×
关闭
举报内容
检举类型
检举内容
检举用户
检举原因
广告推广
恶意灌水
回答内容与提问无关
抄袭答案
其他
检举说明(必填)
提交
关闭
×
关闭
您已邀请
15
人回答
查看邀请
擅长该话题的人
回答过该话题的人
我关注的人
-----------------------------------------------------------------------
再请教5楼的朋友,您的方法可行,想问下08以后的点写呢?
bit bdata redata; //位变量redata定位于数据存储区中的位寻址区(20H-2FH)
-----------------------------------------------------------------------
也可以用联合体和位域实现,sbit尽限在51里使用,用联合体方法更通用,也更容易移植。
-------------------------------------------------------------------------------
不太明白,能不能说详细点?最好能给个例子,谢谢。
位域的用法
typedef union
{
unsigned char xx;
struct
{
unsigned char bit0:1;
unsigned char bit1:1;
unsigned char bit2:1;
unsigned char bit3:1;
unsigned char bit4:1;
unsigned char bit5:1;
unsigned char bit6:1;
unsigned char bit7:1;
};
}BIT_FIELD;
BIT_FIELD x;
使用方法:
x.bit0=1;
x.xx=100;
想不通,既然用C语言编程,为什么还非要用20H~2FH这个位寻址区呢
一周热门 更多>