C环境将变量定义到RAM绝对地址之上
来源:互联网 发布:网络用语辣鸡什么意思 编辑:程序博客网 时间:2024/05/30 23:31
//来源不详
1. 绝对宏:
在程序中,用“#include<absacc.h>”即可使用其中定义的宏来访问绝对地址,包括CBYTE、XBYTE、PWORD、DBYTE、CWORD、XWORD、PBYTE、DWORD
具体使用可看一看absacc.h便知,例如:
rval=CBYTE[0x0002];指向程序存贮器的0002h地址
rval=XWORD[0x0002];指向外RAM的0002h地址
2. _at_关键字
直接在数据定义后加上_at_ const即可,但是注意:
(1)绝对变量不能被初使化;
(2)bit型函数及变量不能用_at_指定。
例如:
idata struct link list _at_ 0x40;指定list结构从40h开始。
xdata char text[25b] _at_0xE000;指定text数组从0E000H开始
提示:如果外部绝对变量是I/O端口等可自行变化数据,需要使用volatile关键字进行描述,请参考absacc.h。
例:
比如,我想让数组myarr[0x30]的起始地址从物理地址0x00800开始,何如?
用指针显然不安全, 请教如何通过预编译指令或者RAM段配置来实现?
unsigned char xdata mayarr[30] _at_0x0800
- C环境将变量定义到RAM绝对地址之上
- vc中把变量定义在某一绝对地址上
- IAR将变量定义在指定地址
- 用c语言跳转到绝对地址0x10000执行
- PIC关于RAM空间变量的绝对定位及分配
- 将VxWorks移植到AT91RM9200处理器之上
- C将变量映射到内存
- STM32将常量数组定义到FLASH固定地址
- STM32将常量数组定义到FLASH固定地址
- <详解>C语言实现程序跳转到绝对地址0x100000处执行
- C语言实现程序跳转到绝对地址0x100000处执行
- C语言实现程序跳转到绝对地址0x100000处执行
- <详解>C语言实现程序跳转到绝对地址0x100000处执行
- 让程序跳转到绝对地址执行
- 跳转到绝对地址处执行代码
- 将hive数据库中的TBLS表导出到HDFS之上
- C/C++学习之C提高----C数组的定义、类型、定义数组指针变量、多维数组的本质、多维数组做函数参数、将两个数组中的字符串copy到第三个数组
- JavaScript将相对地址转换为绝对地址
- 获取联系人名称及全部电话的实例
- LAME参数大全(概述)
- 引起缺陷的典型原因
- 理解 __doPostBack--1
- 除BUG记
- C环境将变量定义到RAM绝对地址之上
- 在cygwin下进行bfin-uclinux开发
- 安装apache
- Using Sahi
- 在任意浏览器下进行脚本调试(firebug)
- org.dom4j.DocumentException: null Nested exception: null
- DNA Sorting
- struts2中使用request引起的性能浪费
- HDFS的元数据持久化