自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

storm

努力学习编译知识,恶补计算机体系结构!

  • 博客(129)
  • 资源 (1)
  • 收藏
  • 关注

原创 OpenMP 作业

openMP是基于共享内存的编程模型,其编程是对线程来说的,就是

2014-10-12 17:32:24 952

原创 C++ lambda 表达式

在看c++ Primer 关于泛型编程的章节中,看到了lambda和bindlia

2014-09-24 18:49:50 731

原创 随机化的快速排序

快排是所有排序算法中平均性能最好的一种pai

2014-09-15 18:39:06 2033

原创 小白学习LLVM-第一篇 LLVM安装

因为最近要使用LLVM,所以要开始了解和学习这个对编译相关的工作有用的利器LLVM.LLVM官方上面有手册介绍LLVM的历史以及如何来安装LLVM的。(在此我想说看外国人写的文档确实可以学到更多的东西,包括英语)这个是我下面要说的内容的一个官方文档的链接:User Guides首先,LLVM由三部分组成。第一部分就是LLVM的打包的组件,包括所有的工具,库,函数头文件。它还

2014-09-11 22:30:56 19919

原创 linux 下ELF 目标文件的各个段

今天看到《程序员的自我修养》这本书的第四章,上面讲到jia'zhai

2014-09-08 12:55:09 1059

原创 硬盘的存储机制

硬盘的基本单位是扇区,每个扇区一般大小为512字节,

2014-09-04 19:38:42 1508

原创 C 语言数组自我总结

经过一个假期后,基本上来说C语言的知识忘的

2014-09-04 11:24:55 632

原创 大学专业学习总结

专业总结 转眼到了大四下学期,时间过的好快,在大学的这四年里经历了很多,也学习了很多,从对这个专业毫不了解,到选择这个专业开始,再到踏入校门。专业学习的过程便开始了。下面就讲讲大学四年我对专业学习的一个总结。大学一年级,也就是刚踏入大学校园的那一年,怀着对大学美好的向往来到了河南最优秀的学府郑州大学,作为信息工程学院软件工程专业的一名学生,开始了自己大学

2014-05-20 21:49:13 8476 2

原创 Boost中的锁

原来以为自己很喜欢多线程的程序,可是当真正调试起来却发现

2014-05-08 21:11:55 15173

原创 如何开发STAF的外部服务

最近在看STAF的付服务开发知识,

2014-04-25 17:03:33 1247

原创 TinyXML读写XML文件

最近要用c++来读写配置文件,和自己的需要记录的数据,这这东西比存在数据库里面

2014-04-17 11:15:15 679

原创 dll 中定义的单例类如何让外部使用

这两天因为一个单例类要定义在dll中,而对外部要b

2014-04-16 09:55:03 3650

原创 初次使用boost 库

最近需要用到Boost库的Thread库,编写点多线程的程序,Boost库

2014-04-14 20:13:24 661

原创 STAF中的STAFObject结构体

今天看到STAF中有STAFObject这个类,感觉就像是C++的基类class,是一个容器类。STAFResult这个类中包含了四个私有变量,如下四个,包括了提交的任务的完整的信息。 STAFRC_t rc; STAFString result; STAFObjectPtr resultObj; STAFObjectPtr resultContext; //

2014-04-03 15:14:58 823

原创 利用STAF调用STAX解析XML来执行脚本

STAF里面封装了好多的数据类型,最奇怪的是STAFString类型。但是大致过程是先注册STAF的服务,会返回一个唯一的id号,高大上的说法叫句柄handle。然后就是按照STAFHandle中的命令格式去设置字段的值,最后就是submit一下提交命令,STAF默认返回值是0的情况下是正常的,STAF API Return Code Reference.html开发文档里有各种错误的返回码,可以

2014-04-02 14:30:22 1276 1

原创 linux 多线程生产者和消费者问题

最近实习学习了点多线程的课程,老师让写个多线程的应用,本来自己想码一个银行排队请求服务的问题,奈何调试了下无果,贴下这个用条件变量实现的多线程问题吧。用到的条件变量的函数:条件变量数据结构:                             pthread_cond_t 初始化条件变量:                                 pthread_con_

2014-03-31 11:04:28 783

原创 C/C++ 回调

1.首先,说下我对C语言回调的理解,套用我们老大的一句话说:回调,就是回过来调用自己嘛? 一般C语言回调是通过函数指针处理的,但是C语言函数指针只能表示函数的地址,此外没有其他的附属信息(返回值、参数个数、类型检查等等)。据说:C#这家伙有类型检查。看下面的一个例子#include typedef void(*fun)(int); int n = 2;void print(int

2014-03-27 22:05:27 588

原创 Visual Stdio 动态库的生成

VS 下面生成动态库时,只需要在项目向导中最后一步选择是生成dll文件或者在创建项目后在项目->属性中设置生成的属性为dll。关键是如何使用生成的dll。VS在生成dll时默认是不生成对应的导入库lib的。需要自己定义需要导入的函数。文件类型为.def。.def的添加方式为项目属性-->连接器-->输入-->模块定义文件,输入source.def。MSDN上的介绍

2014-03-27 17:29:21 850

原创 linux 下简单的模拟QQ 聊天过程 UDP 通讯

一直好奇QQ的通讯过程是怎么实现的,刚学了点linux下的socket编程,所以也想试着模仿下。QQ登陆起初我是想用tcp有连接的方式i,但是发现QQ登陆时并不是一直和服务器连接这的,要不然太耗费服务器资源,应该是服务器每隔多长时间发送一个心跳包,来检测用户是否在线。    封装的消息包:struct message { int from; int to; char tim

2014-03-21 08:53:23 4320

原创 如何在博客上保存网上的资源

我们在网上找到好的资源,一般会用简短的说明加链接来表示资源,博客上有专门的标签,或许会有用吧,就如同文件夹一样,下面是一些免费电子书的链接,Mark~下,会有用的吧!  Github上的500本免费计算机科学电子书推荐https://github.com/vhf/free-programming-books/blob/master/free-programming-books.md#p

2014-01-04 17:20:49 726

转载 数据在存储器中寻址时为什么要对齐边界?

RISC 下使用访存指令读取或写入数据单元时,目标地址必须是所访问之数据单元字节数的整数倍,这个叫做地址对齐。高级语言中一般不会遇到这种问题,编译器常常会处理好数据类型的对齐。但万一遇到、抑或在汇编里遇到,避不开怎么办?可以使用 MIPS 的指令集里提供的 lwr/lwl, swr/srl, ldr/ldl, sdr/sdl 指令对。关于他们的原理可以用下图来简单的示意一下(以ldr/

2014-01-04 16:17:33 9217

转载 求数组中出现次数超过一半的元素

给定一个n个整型元素的数组a,其中有一个元素出现次数超过n / 2,求这个元素。据说是百度的一道题分析设置一个当前值和当前值的计数器,初始化当前值为数组首元素,计数器值为1,然后从第二个元素开始遍历整个数组,对于每个被遍历到的值a[i]1 如果a[i]==currentValue,则计数器值加12 如果a[i] != currentValue, 则计数器值减1,如果计数器值小于0,

2013-08-26 19:16:06 2989 1

原创 矩阵旋转

意输入两个9阶以下矩阵,要求判断第二个是否是第一个的旋转矩阵,如果是,输出旋转角度(0、90、180、270),如果不是,输出-1。要求先输入矩阵阶数,然后输入两个矩阵,每行两个数之间可以用任意个空格分隔。行之间用回车分隔,两个矩阵间用任意的回车分隔。输入:输入有多组数据。每组数据第一行输入n(1输出:判断第二个是否是第一个的旋转矩阵,如果是,输出旋

2013-08-04 12:37:37 1756

转载 数组排序

题目描述:输入一个数组的值,求出各个值从小到大排序后的次序。输入:输入有多组数据。每组输入的第一个数为数组的长度n(1输出:各输入的值按从小到大排列的次序(最后一个数字后面没有空格)。样例输入:4-3 75 12 -3样例输出:1 2 3 1#include#include#include#include#include#

2013-08-04 10:58:09 1043

原创 大数幂模运算

N=2000000000) 输入:    每组测试数据包括一行,x(0输出:    输入可能有多组数据,对于每一组数据,root(x^y, k)的值样例输入:4 4 10样例输出:4#include #include #include #include #include using namesp

2013-08-04 10:00:47 2545

原创 求约数个数问题

题目描述:输入n个整数,依次输出每个数的约数的个数输入:输入的第一行为N,即数组的个数(N接下来的1行包括N个整数,其中每个数的范围为(1当N=0时输入结束。输出:可能有多组输入数据,对于每组输入数据,输出N行,其中每一行对应上面的一个数的约数的个数。样例输入:51 3 4 6 12样例输出:1 2 3 4 6 //别人的代

2013-08-02 23:48:20 3511

原创 矩阵乘法 求斐波那契数列

先简单介绍一下矩阵乘法求斐波那契数列的原理f(n) 是第n项的值。f(1)= 1; f(2) =1;f(n)= f(n-1) + (n-2)下面的介绍是我从网上查到了,收益匪浅。分两步推导: 求斐波那契数列" title="矩阵乘法  求斐波那契数列" style="margin-top:0px; margin-right:0px; margin-b

2013-08-01 19:38:11 4168

原创 日期问题

计算两个日期之差#include #include #include #include #include #include using namespace std;int month1[13]={0, 31, 28, 31, 30, 31, 30, 31,31,30,31,30,31};int month2[13]={0, 31, 29, 31, 30, 31,

2013-07-31 16:15:48 514

原创 N 后问题

利用回溯思想,主要是皇后之间碰撞条件的检测,其他的就是基本的搜索了#include #include int list[101]; int dp[5001]; int main(){ int n, c1, c2, sum, i; while(~scanf("%d%d%d", &n, &c1, &c2)){ sum

2013-07-31 16:10:58 633

原创 两船载物问题

搜索的话解空间太大,会超时,RT 可以用0~1背包做#include #include #include #include #include using namespace std;int n;int c1, c2;int cw ,bestw;int c[103];int _max, sum;int leftw(int t){ int s

2013-07-31 16:09:14 730

原创 触发器

SQL触发器实例16.2.3 INSERT触发器实例1 创建INSERT触发器为STUDENT表创建触发器S_insert,当向STUDENT表中插入数据时,要求学号必须以“97”开头,且课程号CNO必须在COURSE表中,否则取消插入操作。实例代码如下。CREATE TRIGGER S_insertON STUDENTFOR INSERT AS

2013-07-31 09:53:16 1215

原创 课本上的数据库知识

//老师create table Teachers(Tno char(7) primary key,Tname char(10) not null,Sex char(2) check(Sex = '男' or Sex = '女'),Birthday Date,Title char(4),Dno char(4),foreign key(Dno) refere

2013-07-31 09:43:13 933

转载 SQL Server 知识点 数据库

http://www.cnblogs.com/peterzb/archive/2009/06/08/1498543.html

2013-07-21 16:32:31 672

原创 汇编剔除字符串中的空格

include io32.inc.datastring byte 'Let us hava a try ! ',0dh,0ah,0.codestart: mov eax, offset string call dispmsg;call dispcrlf mov ecx, lengthof string ; 从字符串末尾向前遍历 mov esi,

2012-10-30 08:53:24 1771

原创 大数加法

#include #include #include void add(char *a, char *b, char *c){ int i, j; int m, n; int carry = 0; m = strlen(a); n = strlen(b);// c = (char*)malloc((m+n+1)

2012-10-29 10:39:28 404

原创 0 1 背包 回溯版

#include #include #include #include #include #include using namespace std; #define MAX 1000struct node{ int w, v; //背包的价值和体积 int leap; }; int c, n; //背包容量和物品个数 int bestw, cw, c

2012-05-09 23:40:19 416

原创 zoj 1047

#include #include #include #include #include #include using namespace std;char map[25][25];bool vis[25][25];int n, m, a, b;int len;int dir[4][2] = {-1,0, 0,1, 1,0, 0,-1};int dir_x[4][2] =

2012-05-02 22:06:14 774

原创 统计一段页码间出现0的次数

#include#include using namespace std;const int N = 11;int d[11];int value;void deal(int n){ if(n<=0)return; int one, ten; one = n%10; n = n/10; ten = n; for(int i=0; i<=one;

2012-04-24 20:08:32 600

原创 sscanf 和sprintf 函数

好强大的两个函数。具体详细的使用方法去百度吧,各种信息,只是在此纪念下。。#include #include using namespace std;int get_next(int x){ int a, b, n; char s[10]; sprintf(s,"%d",x); n = strlen(s); for(int i=0; i<

2012-04-24 18:53:40 604

原创 数据库 stl

std map是STL的一个关联容器,它提供一对一(其中第一个可以称为关键字,每个关键字只能在map中出现一次,第二个可能称为该关键字的值)的数据处理能力,由于这个特性,它完成有可能在我们处理一对一数据的时候,在编程上提供快速通道。这里说下std map内部数据的组织,std map内部自建一颗红黑树(一种非严格意义上的平衡二叉树),这颗树具有对数据自动排序的功能,所以在std map内部所有的数

2012-04-23 08:55:09 907

大三文法分析

适合大三学习编译原理的同学使用,有源代码,可修改下!

2013-04-30

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除