摘要:
最近写了一个Cache的模拟器,由于平时空余时间比较分散,前前后后用了一周多的时间,基本实现的Cache的模拟功能(通过读取trace文件得到相应的命中率),能够实现直接映射、全相联、组相联三种映射方式,其中全相联和组相联能够实现随机、LRU两种替换策略。目前三种映射方式均采用回写法,但已经定义了其 阅读全文
摘要:
我们经常会遇到这样一个问题,就是判断某个数据是否为2的n次方(1,2,4,8,16...)。例如如果用户输入的不是2^n,则要求用户重新输入。为了说明这种判断算法,我首先构造一个测试程序,代码如下: #include <stdio.h> #include <time.h> int main() { 阅读全文
摘要:
输出到屏幕快还是输出到文件快? 我们在编写程序时经常需要数一些数据到屏幕,来查看我们的结果是否正确,虽然直接输出到屏幕,查看起来呢很方便,但当数据量很大时,需要耗费大量的时间。于是我们想到能不能通过输出到文件来减少时间呢。相同的数据是输出到屏幕更快还是输出到文件更快? 这个地方变量有很多:磁盘速度、 阅读全文
摘要:
我觉得大家初看到这个题目时,一定会很奇怪,一个程序员能够控制多少行代码完全取决于该程序员的能力强弱,这有什么规律可循么?其实当这个想法突然冒出来时,我也都有些诧异。 首先介绍一下我遇到的情况,我当时正在编写一个小程序,是模拟cache工作原理的。这个程序中有一个函数集的实现文件(function.c 阅读全文
摘要:
今天介绍一下clock这个函数的使用,它是C标准库的一部分,声明在头文件<time.h>中,返回处理器使用的时间值,函数声明为: clock_t clock(void); 这个函数看起来很简单,但是当使用时还是有不少需要注意的地方,让我们先看看clock_t这个类型,它表示程序所占用的处理器时间,具 阅读全文
摘要:
CPU的主频,即CPU内核工作的时钟频率(CPU Clock Speed)。CPU的主频表示在CPU内数字脉冲信号震荡的速度。主频和实际的运算速度存在一定的关系,但目前还没有一个确定的公式能够定量两者的数值关系,因为CPU的运算速度还要看CPU的流水线的各方面的性能指标(缓存、指令集,CPU的位数等 阅读全文
摘要:
#include <iostream> #include <string> using namespace std; //关于cin cin.getline cin.get getline gets getchar 的用法实例 void main(int argc, char* argv[]) { 阅读全文
摘要:
在阅读Alfred V.Aho等的大作Compilers Principles,Techniques and Tools是看到如下一段话: Another classification of languages uses the term imperative for languages in wh 阅读全文