3.2 C/C++ 的数据/代码及内存

1 IEEE-754 浮点数

  32位表示的浮点数,首位是符号位,然后8位指数和23位尾数。指数存储时加上了偏移量127,尾数隐含存储了1。

  指数255表示无穷大。

2 多字节值及字典序

  大于8位的值称为多字节量

  小端:存储多字节值的最低有效字节于较低的内存位置。  

  大端:存储多字节值的最高有效字节于较低的内存位置。

  

  整数字节交换位操作:

1 inline U32 swapU32 (U32 value)
2 {
3     return ( (value & 0x000000FF) << 24)4          | ( (value & 0x0000FF00) << 8)
5          | ( (value & 0x00FF0000) >> 8)
6          | ( (value & 0xFF000000) >> 24);
7 } 

  浮点数字节交换:

 1 union U32F32 {
 2     U32 m_asU32;
 3     F32 m_asF32;
 4 };
 5
 6 inline F32 swapF32 (F32 value) {
 7     U32F32 u;
 8     u.m_asF32 = value;
 9     u.m_asU32 = swapU32 (u.m_asU32);
10     return u.m_asF32;
11 }

3 声明、定义及链接规范

  链接器主要功能是解决外部引用,只能报告下两种错误:

  1)找不到extern引用的目标,报错“unresolved external symbol”;

  2)找到两个或以上相同名字的实体(函数或变量),报错“multiply defined symbol”。

  可以多次声明,但只可定义一次。若在同一文件中多次定义,编译器报错,在多个文件中重复定义由链接器报错。因此,把定义置于头文件中是很危险的,若被多个文件include,会产生错误。

  内联函数:内联函数会在调用它的地方展开,复制其机器码。所以若内联函数在多个文件中使用,应将其置于头文件中。

  链接规范:static、内部链接、外部连接。

4 C/C++ 内存布局

  对齐:数据对象的内存地址是否为对齐字节大小的倍数。

  

转载于:https://www.cnblogs.com/tuzihao/p/4008806.html

第三章 游戏软件工程基础相关推荐

  1. 第三章 Java Servlet基础

    第三章 Java Servlet基础 3.6.2 转发 1.获得RequestDispatcher对象 2.RequestDispatcher对象调用forward()方法实现转发 请求转发工作原理 ...

  2. 移动通信第三章,组网技术基础

    移动通信第三章,组网技术基础 3.1移动通信网的基本概念 3.1.1移动通信系统是为多用户提供服务的网络系统,不同于点对点的通信.它是承载移动通信业务的网络,主要完成移动用户之间.移动用户与固定用户之 ...

  3. 《机器学习系列教程》第三章 深度学习基础

    @[第三章 深度学习基础] 第三章 深度学习基础 3.1 基本概念 3.1.1 神经网络组成? 为了描述神经网络,我们先从最简单的神经网络说起. 感知机 简单的感知机如下图所示: [外链图片转存失败( ...

  4. 计算机基础课件第三章ppt,计算机应用基础第三章3.4.ppt

    文档介绍: 3.4 使用网络服务 本节主要学****内容: 掌握即时通信软件QQ的安装与使用; 2. 开通与使用博客或微博; 3. 使用常用的网络服务,如网上存储数据.网上求职或购物 村僧弄锄蔓很卒河 ...

  5. 小白入门之HTML--第三章 CSS样式基础

    1.本章面试题 1.1 在网页中如何使用CSS 1.2 CSS的常用选择器有哪些 2.知识点 2.1 上一章内容回顾 ​ 上一章讲了表格和表单的基本使用 2.2 本章主要讲解CSS的基本用法 3.具体 ...

  6. 构建之法前三章读后感—软件工程

    本教材不同于其他教材一贯的理知识直接灌溉,而是以对话形式向我们传授知识的,以使我们更好地理解知识点,更加清晰明确. 第一章 第一章的概述中,书本以多种方式,形象生动地向我们阐述了软件工程的内容,也让我 ...

  7. 计算机基础课件第三章ppt,计算机应用基础(windows 7+office 2010)课件 第三章 Windows7操作系统.ppt.pdf-汇文网...

    计算机应用基础(windows 7+office 2010)课件 第三章 Windows7操作系统.ppt.pdf-汇文网 计算机应用基础 ( windows 7office 2010) Window ...

  8. 大学计算机基础第五版第三章,大学计算机基础第三章习题答案

    <大学计算机基础第三章习题答案>由会员分享,可在线阅读,更多相关<大学计算机基础第三章习题答案(4页珍藏版)>请在人人文库网上搜索. 1.第三章 微型计算机硬件组成1.微型计算 ...

  9. 第三章 Python函数基础及进阶

    第三章 函数基础及进阶 3.1 上章补充内容 3.1.1 Bytes类型 计算机的数据需要存到硬盘上,但是硬盘只能存储二进制的数据. 我们知道将计算机里的数据转换成我们能看懂的数据是将二进制 -> ...

最新文章

  1. 美国国会议员也是“BCH—HODLING”
  2. [C++基础]017_数据的存放
  3. 分片表怎么建表_经验放送!后端开发实战笔记之如何设计大数据量表结构
  4. Vue watch如何同时监听多个属性?
  5. uva 1613——K-Graph Oddity
  6. directsound抓取麦克风PCM数据封装类
  7. 在磁盘上给文件快速预留一大片空间
  8. ?php if ($modules) { ?,phpStudy安装鲶鱼CMS怎样开启伪静态
  9. 红米 android8 刷机,【红米6 安卓8.1线刷包】MIUI V9.6.7.0.OCGCNFD稳定版 线刷精简包...
  10. win10安装出现“Windows以保护你的电脑” Micosoft Defender SmartScreen阻止了无法识别的应用启动。运行此应用可能会导致你的电脑存在风险。
  11. web前端腾讯外包面试记录
  12. 嵌入式linux软件如何进行数据参数保存
  13. java校验特殊字符_java中文及特殊字符的校验方法
  14. nats断链情况总结
  15. 二叉树的镜像(递归非递归)
  16. java的抽象类的三角形周长_怎么使用Java把抽象类改为接口计算三角形,长方形,圆形的面积?...
  17. PHP伪原创文章自动生成,伪原创文章生成器,伪原创文章生成器源代码 - 贾定强博客...
  18. 地球的“3D大片”来了!高分多模卫星首批亚米级立体影像公布
  19. 解决DLL注册失败的方法
  20. android 车机ui设计,星越L车机初体验,车机流畅功能全,不过也有值得改进之处...

热门文章

  1. 发明者本地回测平台python版[博]
  2. 多重共线性问题的几种解决方法
  3. 拒绝低效加班,别让“囚徒困境”限制你的职业发展
  4. 一个500强公司的数据化运营管理实践
  5. 实验9Linux共享内存通信,操作系统原理与Linux实践教程(卓越工程师培养计划系列教材)...
  6. 计算机通信网填空题答案 与rs232接口相比,x.21接口,2020年自考计算机网络与通信问答题及答案:第三章...
  7. windows 读写锁 python_用Python实现读写锁
  8. python的常量和变量_python中的常量和变量代码详解
  9. vs不想运行某个项目_Creo二次开发--项目搭建
  10. STL常用函数总结-set