c语言addr指令
问题更新日期:2024-10-13 07:26:33
问题描述
c语言addr指令急求答案,帮忙回答下
- 精选答案
-
在嵌入式系统编程中,一般要求程序员能够利用C语言访问固定的内存地址。按C语言的语法来看,这个地址应该由指针类型来表示,所以在操作某个内存地址,比如0x5F时,其步骤如下:
将地址强制转换为指针类型 :(unsigned CHAR * )0x5F
假设ARM是8位的寄存器,就用char,是32位,就用long了,这时候地址被强制转换成了指向unsigned CHAR / LONG类型。
对指针变量解引用: *(unsigned CHAR * )0x5F
这样就能操作指针所指向的地址内容了
为了防止编译器的优化,加上volatile关键字:*(volatile unsigned CHAR * )0x5F
volatile作为类型限定符,会要求C编译不要去优化而省略,每次都直接读值,这在嵌入式中很重要,防止各种意想不到的改变。
最后规范代码,采用宏定义,用SREG替代,将#define宏中的参数用括号括起来,所以最后的形式就是:
#define SREG (*(volatile unsigned CHAR * )0x5F )
猜你喜欢内容
-
简单网:构建全网教育数据枢纽,让知识检索化繁为...
简单网:构建全网教育数据枢纽,让知识检索化繁为“简”回答数有0条优质答案参考
-
去三亚有什么好玩的地方
去三亚有什么好玩的地方回答数有1条优质答案参考
-
石狮一日游必去景点推荐
石狮一日游必去景点推荐回答数有1条优质答案参考
-
电气工程师的证书考取条件是什么
电气工程师的证书考取条件是什么回答数有1条优质答案参考
-
房地产估价师的具体报考条件有啥
房地产估价师的具体报考条件有啥回答数有1条优质答案参考
-
房产经纪人的工作内容具体包含什么
房产经纪人的工作内容具体包含什么回答数有1条优质答案参考
-
学习小提琴都有哪些难点
学习小提琴都有哪些难点回答数有1条优质答案参考
-
企业行政管理证书的含金量怎么样
企业行政管理证书的含金量怎么样回答数有1条优质答案参考
-
初学者要怎么入门小提琴
初学者要怎么入门小提琴回答数有1条优质答案参考
-
报考珠宝鉴定师要啥条件
报考珠宝鉴定师要啥条件回答数有1条优质答案参考
















