- 博客(17)
- 资源 (1)
- 收藏
- 关注
转载 linux之sed用法
sed是一个很好的文件处理工具,本身是一个管道命令,主要是以行为单位进行处理,可以将数据行进行替换、删除、新增、选取等特定工作,下面先了解一下sed的用法sed命令行格式为: sed [-nefri] ‘command’ 输入文本 常用选项: -n∶使用安静(silent)模式。在一般 sed 的用法中,所有来自 STDIN的资料一般
2014-05-14 11:23:07 436
转载 编码字符集与字符集编码的区别
ASCII及相关标准地球人都知道ASCII就是美国标准信息交换码的缩写,也知道ASCII规定用7位二进制数字来表示英文字符,ASCII被定为国际标准之后的代号为ISO-646。由于ASCII码只使用了7个二进制位,也就是说一个字节可以表示的256个数字中,它仅使用了0~127这128个码位,剩下的128个码位便可以用来做扩展,用来表示一些特定语言所独有的字符,因此对这多余的128个码位的不同扩
2014-05-09 15:27:35 491
转载 汇编cmp比较指令详解
刚刚看到了cmp指令,一开始有点晕。后来上网找了些资料,终于看明白了,为了方便初学者,我就简单写下我的思路吧。高手绕过,谢谢!cmp(compare)指令进行比较两个操作数的大小例:cmp oprd1,oprd2为第一个操作减去第二个操作数,但不影响第两个操作数的值它影响flag的CF,ZF,OF,AF,PF我们怎么判断大小呢?若执行指令后
2014-03-07 14:36:43 2016
转载 cdecl、stdcall、fastcall、declspec 的用法和区别(转)
首先这三个修饰符是c和c++调用约定 调用约定(Calling convention)决定以下内容:函数参数的压栈顺序,由调用者还是被调用者把参数弹出栈,以及产生函数修饰名的方法。MFC支持以下调用约定: __cdecl,__stdcal和__fastcalll都是函数调用规范,规定了参数出入栈的顺序和方法,如果只用VC编程的话可以不用关心,但是要在C++和Pascal等其他语言通
2014-03-04 14:16:55 649
转载 李开复:算法的力量
算法是计算机科学领域最重要的基石之一,但却受到了国内一些程序员的冷落。许多学生看到一些公司在招聘时要求的编程语言五花八门就产生了一种误解,认为学计算机就是学各种编程语言,或者认为,学习最新的语言、技术、标准就是最好的铺路方法。其实大家都被这些公司误导了。编程语言虽然该学,但是学习计算机算法和理论更重要,因为计算机算法和理论更重要,因为计算机语言和开发平台日新月异,但万变不离其宗的是那些算法和理论,
2014-02-11 09:45:16 368
转载 [转]Android的绘图密码有多少种可能性
用过Android的人应该知道,Android有一种绘图密码。3×3一共9个点,手指连续划过这些点,每一种绘图方式就是一种密码。那么这种绘图密码一共多少种可能性呢?先提供4个假设:1.假设绘图中覆盖的点的有效个数可以从1到92.每个点都可以是起始点3.每个点被覆盖过后,就不能再连接第二次了,但是可以被再次路过。4.每个点都可以直接连接到任何一个点,除了一种情
2014-02-11 09:36:40 1962
转载 (转)c fread()在判断文件结束时需要注意的一些事
转自http://wmx3ng.blog.163.com/blog/static/17066010820127125150828/样本程序如下:#include #include #include typedef struct{int ele1;int ele2;char ch[20];}ttt; //结构体. void addInfo(
2012-11-04 20:16:41 6057
转载 从一道题谈C++中构造函数调用构造函数
#include stdlib.h>#include iostream>using namespace std;struct CLS{ int m_i; CLS( int i ) : m_i(i){} CLS() { CLS(0); }};int main(){ CLS obj; cout obj.m_i endl; system(
2011-06-10 20:35:00 80
转载 大端(Big Endian)与小端(Little Endian)详解
大端(Big Endian)与小端(Little Endian)简介】Byte Endian是指字节在内存中的组织,所以也称它为Byte Ordering,或Byte Order。 对于数据中跨越多个字节的对象, 我们必须为它建立这样的约定:(1) 它的地址是多少?(2) 它的字节在内存中是如何组织的? 针对第一个问题,有这样的解释: 对于跨越多个字节的对象,一般它所占的字节
2011-06-08 16:44:00 588
转载 C语言的演变史
<br />1972 – C语言的先驱——B语言,被贝尔实验室开发。B语言是一个很快速的,容易维护的,而且对于从系统到应用开发是很好用的。设计这门语言的整个团队被马上解雇了,因为他们干了一件和电话通讯不相干的事情。最后这个项目转给了 Dennis Ritchie。他把这个语言变得不容易理解,很难维护,而且,只能用于系统方面的编程。而且,他还设计了一个指针系统,保让每一个程序都超过500行,并可以使用操作系统的指针。<br />1982 – 大家发现有97% 的C程序调用产生了“缓冲区溢出”问题。于是,C 程
2011-05-25 10:31:00 450
转载 信号量和自旋锁的差别
<br />1)内核同步措施<br /> 为了避免并发,防止竞争。内核提供了一组同步方法来提供对共享数据的保护。我们的重点不是介绍这些方法的详细用法,而是强调为什么使用这些方法和它们之间的差别。<br /> Linux 使用的同步机制可以说从2.0到2.6以来不断发展完善。从最初的原子操作,到后来的信号量,从大内核锁到今天的自旋锁。这些同步机制的发展伴随Linux从单处理器到对称多处理器的过度;伴随着从非抢占内核到抢占内核的过度。锁机制越来越有效,也越来越复杂。<br /> 目
2011-05-12 20:29:00 1118
转载 c语言变参
1. 概述 由于在C语言中没有函数重载,解决不定数目函数参数问题变得比较麻烦;即使采用C++,如果参数个数不能确定,也很难采用函数重载.对这种情况,有些人采用指针参数来解决问题.下面就c语言中处理不定参数数目的问题进行讨论. 2. 定义 大家先看几宏. 在VC++6.0的include有一个stdarg.h头文件,有如下几个宏定义: #define _INTSIZEOF(n) ((sizeof(n)+sizeof(int)-1)&~(sizeof(i
2011-05-12 10:20:00 201
转载 C++中四种类型转换运算符的使用方法
C++的四个类型转换运算符已经有很久了,但一直没有弄清楚它们的用法,今天看到一本书上的解释,才大致地的了解了其具体的用法。 具体归纳如下: reinterpret_cast 该函数将一个类型的指针转换为另一个类型的指针。 这种转换不用修改指针变量值存放格式(不改变指针变量值),只需在编译时重新解释指针的类型就可做到。 reinterpret_cast 可以将指针值转换为一个整型数,但不能用于非指针类型的转换。 例: //基本类型指针的类型转换 double d
2011-05-11 09:41:00 531
转载 sys_fork()
eax作为返回值应该是gcc的约定吧,所以你先要把握这个约定才行~~之后才可能理解其他的代码~~大概的变化过程是这个样子: 1、在 调用 fork 的时候,触发了系统调用 sys_fork (这个你要理解_syscall0这个宏才行) 2、接着进入了系统调用sys_fork(因为之前有注册系统调用0x80,为system_call,而system_call里头有根据系统调用编号来处理sys_fork的语句) sys_fork: call find_empty_process testl %eax,%eax
2011-03-31 16:04:00 1842
转载 (转)执行fork函数的曲折过程
执行fork函数的曲折过程 ----------学习系统过程调用 本文是鄙人在学习中linux源码中的一些体会,希望对初学者有所帮助。一.准备和初始化阶段1. ~/kernel/system_call.s_sys_fork 函数本身 entry point=0x751c2. ~/include/linux/sys.h_sys_call_table[] = { sys_setup, sys_exit, sys_fork, sys_read..} 地址=0x17034_sys_call_tabl
2011-03-31 15:56:00 429
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人