`
james23dier
  • 浏览: 525962 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论
文章列表
题目的意思就是,如何判断A和B的二进制表示中有多少位(bit)不一样?        这是编程之美当中一道练习题,我也就邯郸学步的想了一个算法:         1. 先做位与运算  A & B, 得到结果C;         2. 接着做位或运算 A | B,得到结果D;         3. 再做一次异或运算,不过操作的数不是 A 与 B,而是 C ^ D , 得到结果E;         4. 判断结果 E 其二进制表示中1的个数就得到结果啦。         以下举例说明,为了减少复杂度,就使用八位二进制吧。设 A = 0010 1011, B = 0110 0101. ...
PE文件,Portable Executable file format简称。 那么如何判断一个文件是否为PE格式的文件? 1、首先检验文件头部第一个字的值是否等于 IMAGE_DOS_SIGNATURE,是则 DOS MZ header 有效。 2、一旦证明文件的 DOS header 有效后,就可用e_lfanew来定位 PE header 了。 3、比较 PE header 的第一个字的值是否等于IMAGE_NT_HEADER。如果前后两个值都匹配,那我们就认为该文件是一个有效的PE文件。 上面的是百度的结果 翻译通俗点 1、查找MZ头是否为0X4D5A 2、如果上面条件符 ...
在linux下编译c程序使用gcc,然而编译c++程序却需要使用g++,使用gcc编译c++程序会产生错误:undefined reference to `std::ios_base::Init::Init()。使用gcc -lstdc++编译选项就好。或者改用g++。
1.autoscan (autoconf): 扫描源代码以搜寻普通的可移植性问题,比如检查编译器,库,头文件等,生成文件configure.scan,它是configure.ac的一个雏形。     your source files --> [autoscan*] --> [configure.scan] --> configure.ac 2.aclocal (automake):根据已经安装的宏,用户定义宏和acinclude.m4文件中的宏将configure.ac文件所需要的宏集中定义到文件 aclocal.m4中。aclocal是一个perl 脚本 ...
/etc/fstab文件详解 关键字: /etc/fstab 转载自 http://hi.baidu.com/jingzhongchen/blog/item/8e6f552dcead7ce98b139952.html   做个记录   看你对/etc/fstab文件了解多少?                                                                          (发表日期:2008.6.29 更新日期:2008.8.30)        ...
第一种SUSE Linux IP设置方法 ifconfig eth0 192.168.1.22 netmask 255.255.255.0 up route add default gw 192.168.1.2 释义: #IP配置,包括子网掩码,看情况修改eth0和192.168.1.22 #网关修改 ,看情况修改192.168.1.2 第二种SUSE Linux IP设置方法 在suse操作系统中每个网卡都有一个配置文件,在/etc/sysconfig/network/目录下。用root登录,编辑ifcfg-eth0-你的网卡的物理地址的那个文件: 把BOOTP ...
virtualbox虚拟机下安装sles11sp1,随意瞎捅中将网卡eth0改成eth2了,之后无论如何都上不了网,最后网上查到命令: ip link set eth2 name eth0,之后便能成功上网。原文转载如下: ifconfig命令 手动设置网卡示例 假设想把网卡设置为如下: 网卡:eth0 IP:192.168.2.110 掩码:255.255.255.0 网管:192.168.2.1 可以这样: ifconfig eth0 192.168.2.110 netmask 255.255.255.0 up route add defaul ...
最近工作需要,使用virtualbox架设服务器。使用安装了sles11sp1之后,碰到一个问题,就是如何查看镜像中的rpm包。这是一个很大的问题。通过boss老大的一番谆谆教导,最后终于知道通过mount命令挂载虚拟镜像。命令如下: mount -t iso9660  /dev/cdrom /mnt。
因为项目需要,最近忙于学习使用虚拟机。采用的host是xp,virtualbox虚拟机上安装了sles11sp1。如何在主机和虚拟机之间共享文件成为一大难题,我甚至都准备采用u盘进行传输了。经过组里大牛的一番辱骂+提醒+亲自操作指导,才知道还有这么个共享的方法。转帖一篇文章记录方法: 在Windows的Sun VirtualBox中安装 好Fedora系统后,设置两系统间的共享文件夹。 1、在主机上设一个目录为共享目录。(例如:e:sharefedora)。 2、未启动Fedora操作系统,选中要设置的系统,选择“设置”->“数据空间”->"添加一个新的 ...
最近在centOs上安装apache+mysql+php5.1.6时,出现如下问题:configure: error: Cannot find libmysqlclient under /usr. Note that the MySQL client library is not bundled anymore! 纠缠了我一天的时间,最后实在不行。还是百度。 得到一篇博文指导,成功解决了问题:原文网址:http://apps.hi.baidu.com/share/detail/15155324 内容如下: php:http://www.rpmfind.net/linux/rpm2htm ...
转自往上一篇博文:http://apps.hi.baidu.com/share/detail/14973380   GNU 编译器集(其前身为GNU C 编译器)诞生于1987年。当时Richard Stallman(GNU 项目的创办人)想要创建一个编译器,它可以满足他定义的“自由软件”概念,并可用来编译 GNU 项目发布的其他软件。GNU C 编译器迅速在自由软件社区中流行开来,而且以其健壮性和可移植性而闻名。它已成为许多集成开发工具的基础,被世界各地的发行商应用在 Linux 和其他操作系统之上。   GCC 已不再是主要针对G ...
使用openmpi1.4.3版本练习使用MPI编程,写了一个简单的消息传递和接收的小demo,结果输出接收到的信息的时候出现乱码,现象如下: [chengang@m910 mpi]$ mpirun -n 2 a.out received: Hello, process 1Àa #: [chengang@m910 mpi]$ mpirun -n 2 a.out received: Hello, process 1`Hè: [chengang@m910 mpi]$ mpirun -n 2 a.out received: Hello ...
有时候我们需要在某一个包含很多子目录的目录中搜索查找包含某个文本内容的文本,我们可以在grep中加上 -r选项让grep命令迭代进入子目录查找。同时在命令最后加上代表文件通配符的*号,不然grep会一直等待输入。命令方式如下所示: grep -r "查找文本内容" *  
      前天应老大要求安装hpl。而hpl需要mpi库和blas库支持,于是选用openmpi1.4.3和gotoblas2。       需要说明的是openmpi的安装没有什么问题,除了路径的设定(要在./bash_profile中设定PATH和LD_LIBRARY_PATH)。而gotoblas的安装也不需要特别复杂的说明,直接运行主目录下的configure.64bit(我是64位机,所以选择这个,如果是32位机,就选用configure.32bit)。       最后一步安装hpl。这才是最难得一部分,害得我浪费了两天的时间。两天的时间,我都可以把小月月全集看个好几遍了。痛心 ...
      今天安装一个软件,使用了libz.so.1这样一个动态链接库,编译时没有问题,但是运行时总是提示:libz.so.1:no version information available(...required),其中。。。为安装软件的名称。google一上午没有解决问题,最后实在没有办法,请教老大,两分钟搞定。       原来这是因为编译时使用的makefile中引用的动态链接库和实际运行时使用的动态链接库不同造成的。可以通过 ldd application_path/executable查看可执行文件的动态链接库,然后与makefile文件中的动态链接库对比不是一个链接库,因此 ...
Global site tag (gtag.js) - Google Analytics