结论

1. 结构体或类内数据元素长度“都” < 机器字长, 对齐单元 = 最长的数据元素长度。
2. 结构体或类内数据元素长度“存在” > 机器字长, 对齐单元 = 机器字长。

所以,在64位中,最长的数据元素为8个字节,对齐单元 = 最长的数据元素长度,数据项仅仅能存储在地址是数据项大小的整数倍的内存位置上。例如:

  • long long 占8字节,只能放在首地址为0,8,16等位置
  • int 占4字节,只能放在首地址为0,4,8等位置
  • char 占1字节,能放在任意位置

在32位中,若存在long long,则 > 机器字长,对齐单元 = 机器字长=4,所以 long long有可能在4的倍数的地址上。

可使用以下代码进行简单测试:

#include <iostream>using namespace std;
//#pragma pack(4)//改变操作系统的默认对齐系数 4:32位机,8:64位机
struct A{
//  short a;char ch1;
//  short b;
//  short c;
//  char ch2;
//  int j;long long k;
//  int i;
};
int main()
{A e;cout << sizeof(e)<< endl;return 0;
}

这位同学的更详细

计算机组成原理——存储地址与边界对齐相关推荐

  1. 计算机组成原理二进制地址码,计算机组成原理第四章第三讲.ppt

    计算机组成原理第四章第三讲 第四章 存储器;存储器概述分类层次结构主存储器概述半导体存储芯片静态随机存储器动态随机存储器只读存储器存储器与CPU的连接存储器的校验提高访存速度的措施; 高位字节 地址为 ...

  2. 计算机组成原理 微地址设置MLD,计算机组成原理实验

    <计算机组成原理实验>由会员分享,可在线阅读,更多相关<计算机组成原理实验(23页珍藏版)>请在技术文库上搜索. 1.计算机组成原理实验23实验2微地址+1操作置MLD=1.按 ...

  3. 计算机组成原理存储结构,计算机组成原理与体系结构----存储系统

    数据的表示 计算机结构 Flynn分类法 CISC与RISC 流水线技术 存储系统 总线系统 可靠性 校验码 存储系统 1.存储的层次化结构 CPU(寄存器) <=>Cache(按内容存取 ...

  4. 计算机组成原理二进制地址码,计算机组成原理

    基础题 1. 解释冯·诺依曼计算机的特点? 冯·诺依曼计算机的特点计算机::由五大部件组成,指令和数据以同等地位存于存储器可按地址寻访,指令和数据用二进制表示,指令由操作码和地址码组成,存储程序,以运 ...

  5. 计算机组成原理求地址范围,计算机组成原理,寻址范围是什么意思?

    地址指针的字长是二进制的16位,说明可以表达的地址个数为2^16个. 2^16=(2^6)*(2^10)=64*1024=64KB,也就是它的可寻址范围是64KB,相应的地址号是00000000000 ...

  6. 计算机组成原理求地址范围,计算机组成原理中给定两个地址码,如何求这两个地址码之间总容量...

    数的原码.反码及补码 1.数的表示形式 在生活中表示数的时候一般都是把正数前面加一个"+",负数前面加一个"-",但是在数字设备中,机器是不认识这些的,我们就把 ...

  7. 【计算机组成原理】计算机组成原理纠错本

    [计算机组成原理]计算机组成原理纠错本 标签(空格分隔):[考研纠错本] 考研计算机组成原理纠错本 文章目录 考研计算机组成原理纠错本 第一轮 1. 计算机发展历程 2. 计算机系统的层级结构 3. ...

  8. 计算机组成原理学习笔记

    文章目录 一.计算机系统概述 (一)计算机发展历程 (二)计算机硬件的基本组成 (三)计算机系统的层次结构 (四)计算机性能指标 二.数据的表示和运算 (一)进位计数制 (二)bcd码 (二)字符和字 ...

  9. 【计算机组成原理】第2章 数据的表示和运算

    计算机组成原理 - 思维导图https://www.mubucm.com/doc/6PgA7liG4DO 2.1 数制与编码 2.1.1 进位计数制的相互转换 二进制 -> 八/十六进制 以小数 ...

最新文章

  1. PostgreSQL(三)pgpool管理PostgreSQL集群下主机宕机后的主从切换
  2. 给定两个字符串形式的非负整数 num1 和num2 ,计算它们的和。
  3. TensorRT(4)-Profiling and 16-bit Inference
  4. PHP常用正则:手机 邮箱 网址
  5. 《网络编程》ioctl 操作
  6. 本文介绍使用OpenCV-Python进行形态学处理
  7. web performance in action学习前言
  8. MFC开发IM-设置 static的背景色和字体色
  9. css 列表属性详细总结
  10. CSS-文本垂直居中
  11. 微服务的4个设计原则和19个解决方案
  12. 自动化测试===unittest和requests接口测试案例,测试快递查询api(二)
  13. 最新QQ勋章墙+防撤回V9.6.1版本+实测可用
  14. @JsonFormat和@DataFormat注解解决前后端日期格式一致性问题
  15. [VS code - SSH Remote] ln: failed to create hard link ... File exists
  16. 【用户研究】【实战】——“得到”APP 可用性测试
  17. matlab绘制收益率曲线并计算风险收益率VaR(Value At Risk)
  18. python,给定任意列表lst和一个任意值item,返回item在lst中第一次出现的位置
  19. 移动端车牌识别:新能源车牌识别上线
  20. halcon measure_pos和measure_pairs详解

热门文章

  1. 视频帧率(Frame rate)
  2. JavaScript我的常用函数库
  3. c语言编程给系统加密保护,C语言:模拟输入密码系统,三次以内正常通过,三次退出程序...
  4. java/php/net/pythont羽毛球场地管理系统设计
  5. [游戏]近期期待作品一览
  6. 最有效的5条改进措施
  7. Freemarker+Fmpp简介
  8. 全国大学生数学建模竞赛禁用MATLAB?这届哈工大学生太难了
  9. A process in the process pool was terminated abruptly while the future was running or pending
  10. rabbitmq connection_closed_abruptly