深入理解计算机系统CS213学习笔记

Lecture 01

1. 计算机表示数字

int 整数运算可能会出现错误,超过32位时会出现溢出。

float 浮点数不适用结合律,因为浮点数表示的精度有限。

根其原因,是用有限的位数表示无限的数字空间。

2.利用分层的存储系统,使程序运行更快。

更重要的是,注意内存访问。C++不做内存边界检查。

例子:结构体内部的数据成员在内存中放在一起,当访问数组时,超过了数组的边界,但是不会做内存的边界检查,因此 会访问到其他数据,造成错误。

这种错误调试很难。所以,在自己写程序时,要手动添加边界检查。

理解数据结构的特点。

3.从程序的角度增加性能

一行一行的访问数据比一列一列的访问数据更好,这与内存的排列方式有关。

相关推荐
2301_802651082 小时前
imx6ull裸机开发:UART
学习
辣知2 小时前
辣知·化智56 良渚神权与夏朝颠覆
学习
商业白皮书3 小时前
杭州企业做 GEO 怎么选服务商?B2B 制造、外贸出海与品牌连锁选型指南
笔记
dadaobusi3 小时前
学习:三层交换机
学习
商业白皮书3 小时前
密不透风的瑕疵防线:东集SEV400视觉传感器,定义“轻量化”精准检测
笔记
笨鸟先飞的橘猫3 小时前
树结构在游戏行业中的应用
学习·游戏
yangmu32034 小时前
从显像管到Micro-LED:屏幕的光之进化
学习·显示器
半生过往5 小时前
前端工程师学习智能体开发(一)
前端·学习·状态模式
谢白羽6 小时前
MiniMax-H3 : 4卡 H20-3e一套权重部署实践/8卡H200部署优化实测
笔记·llm·论文·大模型部署·sglang
志尊宝6 小时前
Vue3 零基础每日笔记(024):组件的创建与使用——从 import 到自动导入
前端·vue.js·笔记·前端框架·html5