打印

单片机操作内存

[复制链接]
1729|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
frank21|  楼主 | 2009-11-29 21:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
frank21|  楼主 | 2009-11-29 22:16 | 只看该作者
自己顶一下吧

使用特权

评论回复
板凳
xlsbz| | 2009-11-29 22:24 | 只看该作者
可以啊  比如在 0x0020这个位置放个数!

*(unsigned char *)0x0020 = 0xFF;

哈哈那么你就会发现 你设置的头8个bit 变量就是1了!!!!

使用特权

评论回复
地板
xlsbz| | 2009-11-29 22:25 | 只看该作者
当然也可以用那个 _at_  但是我不会这个! 你自己查查书吧

使用特权

评论回复
5
NE5532| | 2009-11-29 22:30 | 只看该作者
如果不能操作存储单元,那你咋对变量赋值的呢?你的任何变量操作都是在对存储单元操作,还可以用指针来访问。不过汇编可以随意玩寄存器,C就不行了;还有汇编可以玩PC指针和堆栈,C就不行了,这就是汇编比C牛X的地方。

使用特权

评论回复
6
frank21|  楼主 | 2009-11-30 20:03 | 只看该作者
5# NE5532


我是指直接将数存在我指定的内存地址中哈!

使用特权

评论回复
7
NE5532| | 2009-11-30 20:37 | 只看该作者
你拿指针指就是了,不过小心弄飞。

使用特权

评论回复
8
mohanwei| | 2009-11-30 20:50 | 只看该作者
C也是可以玩寄存器的……

使用特权

评论回复
9
Txapp| | 2009-11-30 21:52 | 只看该作者
C咋就不能随意玩寄存器了呢?既然汇编那么牛XWindow, Linux咋不全用汇编写呢,咋99%都用该死的C来写啊?

使用特权

评论回复
10
NE5532| | 2009-11-30 22:20 | 只看该作者
C只能声明是Register变量,不像汇编能完全操作硬件,C的好处就是快,可以把注意力集中在应用上而不是集中在资源分配上。

使用特权

评论回复
11
desert_hawk| | 2009-11-30 22:43 | 只看该作者
用三楼的办法就行了。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

8

主题

48

帖子

0

粉丝