第三章 游戏软件工程基础
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
第三章 游戏软件工程基础相关推荐
- 第三章 Java Servlet基础
第三章 Java Servlet基础 3.6.2 转发 1.获得RequestDispatcher对象 2.RequestDispatcher对象调用forward()方法实现转发 请求转发工作原理 ...
- 移动通信第三章,组网技术基础
移动通信第三章,组网技术基础 3.1移动通信网的基本概念 3.1.1移动通信系统是为多用户提供服务的网络系统,不同于点对点的通信.它是承载移动通信业务的网络,主要完成移动用户之间.移动用户与固定用户之 ...
- 《机器学习系列教程》第三章 深度学习基础
@[第三章 深度学习基础] 第三章 深度学习基础 3.1 基本概念 3.1.1 神经网络组成? 为了描述神经网络,我们先从最简单的神经网络说起. 感知机 简单的感知机如下图所示: [外链图片转存失败( ...
- 计算机基础课件第三章ppt,计算机应用基础第三章3.4.ppt
文档介绍: 3.4 使用网络服务 本节主要学****内容: 掌握即时通信软件QQ的安装与使用; 2. 开通与使用博客或微博; 3. 使用常用的网络服务,如网上存储数据.网上求职或购物 村僧弄锄蔓很卒河 ...
- 小白入门之HTML--第三章 CSS样式基础
1.本章面试题 1.1 在网页中如何使用CSS 1.2 CSS的常用选择器有哪些 2.知识点 2.1 上一章内容回顾 上一章讲了表格和表单的基本使用 2.2 本章主要讲解CSS的基本用法 3.具体 ...
- 构建之法前三章读后感—软件工程
本教材不同于其他教材一贯的理知识直接灌溉,而是以对话形式向我们传授知识的,以使我们更好地理解知识点,更加清晰明确. 第一章 第一章的概述中,书本以多种方式,形象生动地向我们阐述了软件工程的内容,也让我 ...
- 计算机基础课件第三章ppt,计算机应用基础(windows 7+office 2010)课件 第三章 Windows7操作系统.ppt.pdf-汇文网...
计算机应用基础(windows 7+office 2010)课件 第三章 Windows7操作系统.ppt.pdf-汇文网 计算机应用基础 ( windows 7office 2010) Window ...
- 大学计算机基础第五版第三章,大学计算机基础第三章习题答案
<大学计算机基础第三章习题答案>由会员分享,可在线阅读,更多相关<大学计算机基础第三章习题答案(4页珍藏版)>请在人人文库网上搜索. 1.第三章 微型计算机硬件组成1.微型计算 ...
- 第三章 Python函数基础及进阶
第三章 函数基础及进阶 3.1 上章补充内容 3.1.1 Bytes类型 计算机的数据需要存到硬盘上,但是硬盘只能存储二进制的数据. 我们知道将计算机里的数据转换成我们能看懂的数据是将二进制 -> ...
最新文章
- 美国国会议员也是“BCH—HODLING”
- [C++基础]017_数据的存放
- 分片表怎么建表_经验放送!后端开发实战笔记之如何设计大数据量表结构
- Vue watch如何同时监听多个属性?
- uva 1613——K-Graph Oddity
- directsound抓取麦克风PCM数据封装类
- 在磁盘上给文件快速预留一大片空间
- ?php if ($modules) { ?,phpStudy安装鲶鱼CMS怎样开启伪静态
- 红米 android8 刷机,【红米6 安卓8.1线刷包】MIUI V9.6.7.0.OCGCNFD稳定版 线刷精简包...
- win10安装出现“Windows以保护你的电脑” Micosoft Defender SmartScreen阻止了无法识别的应用启动。运行此应用可能会导致你的电脑存在风险。
- web前端腾讯外包面试记录
- 嵌入式linux软件如何进行数据参数保存
- java校验特殊字符_java中文及特殊字符的校验方法
- nats断链情况总结
- 二叉树的镜像(递归非递归)
- java的抽象类的三角形周长_怎么使用Java把抽象类改为接口计算三角形,长方形,圆形的面积?...
- PHP伪原创文章自动生成,伪原创文章生成器,伪原创文章生成器源代码 - 贾定强博客...
- 地球的“3D大片”来了!高分多模卫星首批亚米级立体影像公布
- 解决DLL注册失败的方法
- android 车机ui设计,星越L车机初体验,车机流畅功能全,不过也有值得改进之处...
热门文章
- 发明者本地回测平台python版[博]
- 多重共线性问题的几种解决方法
- 拒绝低效加班,别让“囚徒困境”限制你的职业发展
- 一个500强公司的数据化运营管理实践
- 实验9Linux共享内存通信,操作系统原理与Linux实践教程(卓越工程师培养计划系列教材)...
- 计算机通信网填空题答案 与rs232接口相比,x.21接口,2020年自考计算机网络与通信问答题及答案:第三章...
- windows 读写锁 python_用Python实现读写锁
- python的常量和变量_python中的常量和变量代码详解
- vs不想运行某个项目_Creo二次开发--项目搭建
- STL常用函数总结-set