当前位置:  技术问答>linux和unix

arm字和半字对齐困惑

    来源: 互联网  发布时间:2016-12-08

    本文导语:  arm有字和半字对齐,那么如果是程序中连续定义两个char型变量,那么这两个变量是连续放在一起,还是放一个变量后,然后中间隔3个或1个字节再放剩下的那个变量, 还有,就是如果这两个char型变量是连续放在一起...

arm有字和半字对齐,那么如果是程序中连续定义两个char型变量,那么这两个变量是连续放在一起,还是放一个变量后,然后中间隔3个或1个字节再放剩下的那个变量,
还有,就是如果这两个char型变量是连续放在一起的,如果要对第二个变量进行访问的话,是怎么去访问的,如果是直接对它所在的地址进行访问,那么此时就是对非对齐的数据进行访问了,那是不是会出错啊。

|
当连续申明两个char变量时,这两个变量是连续放在一起的  当对字节进行加载互存储时没有要求按字对齐,这一点你可以去看他的指令说明

更多技术文章敬请关注:武汉华嵌-嵌入式培训专家,国内领先的嵌入式服务机构,   
http://www.embedhq.org 

|
连续定义的两个变量应该是地址连续的,结构体内的变量才需要对齐吧 ,直接根据前一个char变量可以计算下一个char变量的地址

|
我的理解:
字节对齐是和变量的类型有关吧 char型就占一个字节 存在任何(奇偶)都可以吧

int型  假如占四字节 才需要按照你说的方式存放

|
一个字是四个字节吧,半字就是两个字节。字符变量没什么对其要求,所以应该是连续存放。
字对齐是指变量的收低址需是4的倍数,半字对齐是变量的首地址是2的倍数。

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • java命名空间javax.swing类defaultbuttonmodel的类成员方法: armed定义及介绍
  • arm-elf-gcc 和 arm-linux-gcc有什么区别?arm-elf-gcc里的elf代表什么?
  • java命名空间javax.accessibility类accessiblestate的类成员方法: armed定义及介绍
  • 关于买ARM9或ARM11的开发板的问题~~~
  • arm-unknown-linux-gnu-gcc與arm-linux 的compiler有不同嗎
  • make ARCH=arm CROSS_COMPILE=arm-linu-错误
  • 请问哪有 arm-linux-nm, arm-linux-addr2line等等这些工具的使用说明~~~
  • 使用eclipse 加入arm-elf-gcc 或arm-linux-gcc 编译器为什么不好使
  • 现在是ARM9还是ARM11比较流行啊?我想买开发板什么牌子的比较好啊,我是大学生。
  • ARM ping不通虚拟机,虚拟机可以ping通ARM
  • 疑惑softfloat的问题,并求arm-linux-gcc和arm-linux-softfloat-gcc4.1.1
  • 新手请教 移植2.6内核到arm9,芯片:arm926ejs,Flash: NOR
  • 请教:make ARCH=arm CROSS_COMPILE=arm-linu- menuconfig出错
  • arm-linux-gcc 交叉编译poco-1.3.5-all 报错stlport_arm_linux_gcc库找不到
  • 关于arm 2440 选择arm-linux-gcc编译器版本的问题
  • ARM开发怎么实现域名解析呢,ARM板能ping通IP,不能ping通域名?
  • 关于ARM的几个基本概念
  • arm linux 2.6.29 下载初级问题,大家指教
  • 关于ARM内核编译
  • arm-elf-gcc问题
  • ARM linux学习的问题


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3