计算机系统
文章平均质量分 72
Mind_V
这个作者很懒,什么都没留下…
展开
-
error C4146: 一元负运算符应用于无符号类型,结果仍为无符号类型
在学习有符号类型整数运算时,会遇到溢出的可能: 如下代码,tadd_ok函数能检测计算结果是否溢出#include<iostream>using namespace std;//判断是否溢出,返回1则不溢出,0则溢出int tadd_ok(int x, int y){ int sum = x + y; if ((x > 0 && y > 0 && sum < 0)原创 2017-05-08 17:30:10 · 3665 阅读 · 2 评论 -
深入理解浮点数类型float和double
浮点数的表示浮点数格式首先看一下64位机器中的浮点数float和double格式:浮点数位表示有三个字段,分别对这些值进行编码:符号位s,阶码字段exp和小数字段frac。单精度float浮点格式中,s、exp和frac分别为1,8和23位,得到一个32位的表示;双精度double浮点格式中,s、exp和frac分别为1,11和52位,得到一个64位的表示。编码知道了浮点数的位表示,那如何对数值进行原创 2017-07-17 13:14:29 · 4719 阅读 · 0 评论 -
优化程序性能
一般来说,程序优化主要是以下三个步骤: 1. 高级设计 —— 算法和数据结构选择 2. 基本编码原则 —— 编码优化 3. 低级优化 —— 代码结构化高级设计算法的选择是必须首要考虑的,也是最重要的一步。一般我们需要分析算法的时间复杂度,即处理时间与输入数据规模的一个量级关系,一个优秀的算法可以将算法复杂度降低若干量级,那么同样的实现,其平均耗时一般会比其他复杂度高的算法少(这里不代表任意输原创 2017-08-29 18:08:24 · 466 阅读 · 0 评论 -
《深入理解计算机系统》|处理器体系结构
《深入理解计算机系统》|处理器体系结构目录学习事物是怎样工作的有其内在价值:处理器是如何工作的对于我们普通人来说一直是个秘密,我们将从零开始构建一个流水线处理器,为了实现这一处理器的软硬件,我们有大量的前提知识要学习,包括:指令系统、硬件设计背景知识(hcl)、以及流水线的通用原理。学习完这些内容以后我们才开始YY一个我们自己的86处理器。本章内容※ YY一个指令集Y8...转载 2018-05-17 15:26:19 · 1660 阅读 · 0 评论