<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[南飞的侯鸟]]></title><description><![CDATA[整个世界都属于我,却不代表我不寂寞]]></description><link>https://blog.youkuaiyun.com/mindview</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; mindview]]></copyright><item><title><![CDATA[The syntax of C in Backus-Naur form]]></title><link>https://blog.youkuaiyun.com/mindview/article/details/2533464</link><guid>https://blog.youkuaiyun.com/mindview/article/details/2533464</guid><author>mindview</author><pubDate>Tue, 10 Jun 2008 21:16:00 +0800</pubDate><description><![CDATA[ ::= {}* ::=                          |  ::= {}*  {}*  ::=                           |                           |  ::= auto                            | register                            | static  ]]></description><category></category></item><item><title><![CDATA[The Standard C Library ]]></title><link>https://blog.youkuaiyun.com/mindview/article/details/2420544</link><guid>https://blog.youkuaiyun.com/mindview/article/details/2420544</guid><author>mindview</author><pubDate>Fri, 09 May 2008 09:48:00 +0800</pubDate><description><![CDATA[C的标志库函数是学习和使用C语言的基础,是编写经典C程序的基础,是学习其他计算机知识的基础.C标志库中一共包含了15个头文件:              1：NDEBUG    NDEBUG宏是调试开关，当使用#include NDEBUG时程序为非调试状态，这种状态下调试宏assert不起作用。assert    调试宏assert只有在程序处于调试状态下才发挥作用，]]></description><category></category></item><item><title><![CDATA[C++操作数的类型转换（一）]]></title><link>https://blog.youkuaiyun.com/mindview/article/details/2277102</link><guid>https://blog.youkuaiyun.com/mindview/article/details/2277102</guid><author>mindview</author><pubDate>Thu, 10 Apr 2008 13:06:00 +0800</pubDate><description><![CDATA[ 在C＋＋中，进行算术运算前通常需要对操作数进行类型转换，特别是对两个类型不同的操作数，往往要把它们转换成相同类型。算术运算的结果类型与转换后的操作数类型相同。       C＋＋的类型转化方式有两种：隐式转换和显式转换。隐式转换由编译程序按照某种预定的规则进行自动转换；显式转换由写程序的人在程序中用类型转换操作符明确地指出转换。       当操作数的类型为算术类型或者枚举类型时，在]]></description><category></category></item><item><title><![CDATA[Understanding ELF using readelf and objdump]]></title><link>https://blog.youkuaiyun.com/mindview/article/details/2260906</link><guid>https://blog.youkuaiyun.com/mindview/article/details/2260906</guid><author>mindview</author><pubDate>Tue, 08 Apr 2008 16:14:00 +0800</pubDate><description><![CDATA[                         Contributed by Mulyadi Santosa                      in Misc                     on 2006-06-16 00:00:00                                                ]]></description><category></category></item><item><title><![CDATA[x87FPU状态寄存器]]></title><link>https://blog.youkuaiyun.com/mindview/article/details/2231354</link><guid>https://blog.youkuaiyun.com/mindview/article/details/2231354</guid><author>mindview</author><pubDate>Sun, 30 Mar 2008 20:38:00 +0800</pubDate><description><![CDATA[ 16位的X87FPU状态寄存器表示了X87 FPU的当前状态。该寄存器中的包含FPU忙标志，TOP指针，条件代码标志，错误状态标志，栈错误标志和异常标志。X87 FPU通过设置这些标志展现出操作的结果。]]></description><category></category></item><item><title><![CDATA[c语言控制语句对应的汇编语句代码]]></title><link>https://blog.youkuaiyun.com/mindview/article/details/2192878</link><guid>https://blog.youkuaiyun.com/mindview/article/details/2192878</guid><author>mindview</author><pubDate>Mon, 17 Mar 2008 20:45:00 +0800</pubDate><description><![CDATA[ 1、if-thenif-then语句的通用形式为：    if (test-expr)        then-statement    else        else-statement    这里的test-expr是整型表达式，它的取值为0或者为非0。if-then语句对应的汇编实现形式为：    t = test-expr;    if (t)        goto true;   ]]></description><category></category></item><item><title><![CDATA[c语言汇编]]></title><link>https://blog.youkuaiyun.com/mindview/article/details/2188569</link><guid>https://blog.youkuaiyun.com/mindview/article/details/2188569</guid><author>mindview</author><pubDate>Sun, 16 Mar 2008 21:34:00 +0800</pubDate><description><![CDATA[int main() ...{    short x=6;    short y=9;    short z;    z = x+y;        return 0;}    .file    "CSCILab03-1.cpp"; This is the input source file.  This will probably make it into the; asse]]></description><category></category></item><item><title><![CDATA[书写Linux下自己的shellcode]]></title><link>https://blog.youkuaiyun.com/mindview/article/details/2174345</link><guid>https://blog.youkuaiyun.com/mindview/article/details/2174345</guid><author>mindview</author><pubDate>Wed, 12 Mar 2008 20:23:00 +0800</pubDate><description><![CDATA[ 原    作：aleph1                翻译注释：warning3  1999/07               验证修改：scz  2000/01/13                              概述：                                  aleph1书写了这篇经典文章，首先要向他致敬。                   tt整]]></description><category></category></item><item><title><![CDATA[Linux Shell基本工作原理 ]]></title><link>https://blog.youkuaiyun.com/mindview/article/details/2171447</link><guid>https://blog.youkuaiyun.com/mindview/article/details/2171447</guid><author>mindview</author><pubDate>Tue, 11 Mar 2008 23:24:00 +0800</pubDate><description><![CDATA[系统初启后，核心为每个终端用户建立一个进程去执行Shell解释程序。它的执行过程基本上按如下步骤： (1)读取用户由键盘输入的命令行。 (2)分析命令，以命令名作为文件名，并将其它参数改造为系统调用execve( )内部处理所要求的形式。                                     execve()函数将执行一个程序。execve()]]></description><category></category></item><item><title><![CDATA[一个C程序的内存布局(memory layout)]]></title><link>https://blog.youkuaiyun.com/mindview/article/details/2151471</link><guid>https://blog.youkuaiyun.com/mindview/article/details/2151471</guid><author>mindview</author><pubDate>Wed, 05 Mar 2008 19:05:00 +0800</pubDate><description><![CDATA[一个C程序一直以来都是由以下5个段(pieces)组成： 代码段(text segment)：存放CPU执行的机器指令(machine instructions)。通常情况下，代码段是可共享的，使其可共享的目的是对于频繁被执行的程序，只需要在内存中有一份拷贝即可，比如文本编辑器 (text editors)，C编译器，shell等等。另外，代码段也通常是只读的，使其只读的原因是防止一个]]></description><category></category></item><item><title><![CDATA[linux汇编之命令行参数]]></title><link>https://blog.youkuaiyun.com/mindview/article/details/2151336</link><guid>https://blog.youkuaiyun.com/mindview/article/details/2151336</guid><author>mindview</author><pubDate>Wed, 05 Mar 2008 18:30:00 +0800</pubDate><description><![CDATA[在需要传入命令行参数时，程序如何取得这些参数呢？ 在高级语言程序中，例如C，可以通过main函数的提供参数得到，而在汇编语言中取得这些参数并不是这么简单。这些参数会被保存在栈中，压栈顺序和参数的声明顺序相反，先把指向环境变量的envp压如栈中，然后压如一个全0,区别开环境变量和命令行参数。然后是指向各个命令行参数的指针数组argv，最后才把参数个数argc压如。这样当程序执行时，栈中存放的数据如下]]></description><category></category></item><item><title><![CDATA[内存字节对齐]]></title><link>https://blog.youkuaiyun.com/mindview/article/details/2134420</link><guid>https://blog.youkuaiyun.com/mindview/article/details/2134420</guid><author>mindview</author><pubDate>Fri, 29 Feb 2008 18:52:00 +0800</pubDate><description><![CDATA[ 1. 定义：    sizeof是何方神圣？    sizeof 乃 C/C++ 中的一个操作符（operator）是也。简单说其作用就是返回一个对象或者类型所占的内存字节数。MSDN上的解释为：The sizeof keyword gives the amount of storage, in bytes, associated with a variabl]]></description><category></category></item><item><title><![CDATA[IEEE754 浮点数表示]]></title><link>https://blog.youkuaiyun.com/mindview/article/details/2133079</link><guid>https://blog.youkuaiyun.com/mindview/article/details/2133079</guid><author>mindview</author><pubDate>Fri, 29 Feb 2008 14:52:00 +0800</pubDate><description><![CDATA[ IEEE754 浮点数表示IEEE754 浮点数标准是当今在计算机中使用最为普遍的浮点数表示方法。这篇文章将对IEEE浮点数表示方法给出一个简短的介绍。1.       什么是浮点数计算机中小数的小数点并不是用某个数字表示的，而是用隐含的小数点的位置来表示的。根据小数点的位置是否固定，又可以分为定点表示和浮点表示。浮点数顾名思义就是小数点不固定，是浮动的，要处理的数既有整数部分又]]></description><category></category></item><item><title><![CDATA[回车和换行]]></title><link>https://blog.youkuaiyun.com/mindview/article/details/2109229</link><guid>https://blog.youkuaiyun.com/mindview/article/details/2109229</guid><author>mindview</author><pubDate>Wed, 20 Feb 2008 14:04:00 +0800</pubDate><description><![CDATA[ 今天，我总算搞清楚“回车”（carriage return）和“换行”（line feed）这两个概念的来历和区别了。在计算机还没有出现之前，有一种叫做电传打字机（Teletype Model 33）的玩意，每秒钟可以打10个字符。但是它有一个问题，就是打完一行换行的时候，要用去0.2秒，正好可以打两个字符。要是在这0.2秒里面，又有新的字符传过来，那么这个字符将丢失。于是，研制人员]]></description><category></category></item><item><title><![CDATA[属性文法]]></title><link>https://blog.youkuaiyun.com/mindview/article/details/2107082</link><guid>https://blog.youkuaiyun.com/mindview/article/details/2107082</guid><author>mindview</author><pubDate>Tue, 19 Feb 2008 16:58:00 +0800</pubDate><description><![CDATA[ 利用L属性文法自上向下分析，输出四元式的翻译模式： S->id=E {gen(=,E.place,__,entry(id))} E->T {R.i = T.place}   R {E.place = R.s}R->+   T  {R1.i= newtemp; gen(+,R.i,T.place,R1.i)}   R1 {R.s =R1.s}R-]]></description><category></category></item><item><title><![CDATA[回校了]]></title><link>https://blog.youkuaiyun.com/mindview/article/details/2107045</link><guid>https://blog.youkuaiyun.com/mindview/article/details/2107045</guid><author>mindview</author><pubDate>Tue, 19 Feb 2008 16:51:00 +0800</pubDate><description><![CDATA[16号早上六点半火车开到南京，一夜的火车，十个多小时，没睡一个囫囵觉也没吃饭，在火车上没有吃饭的习惯，又困又累但不饿。拿着简单的行李，就被后边的人簇拥着走下了火车。刚下车就感到冷冷的，南京的天气突然冷了许多。出站后，和在车上一路走来的人道别，互相笑着说了声“再见”。我转过头却再也笑不出来，因为我知道不会再见。有些人注定只能相遇在路上，却不能走入你的生活。有时间相遇，却没有足够的时间相处，这也许]]></description><category></category></item><item><title><![CDATA[gcc创建共享库]]></title><link>https://blog.youkuaiyun.com/mindview/article/details/2045096</link><guid>https://blog.youkuaiyun.com/mindview/article/details/2045096</guid><author>mindview</author><pubDate>Tue, 15 Jan 2008 13:38:00 +0800</pubDate><description><![CDATA[ 首先有必要介绍一下静态库和动态库的区别。简单的说静态库就是在生成可执行文件的时候把用到的函数代码加入到其中。而动态库只是在运行的时候才会被加载。动态库的应用有两个主要原因：    1.    共享。多个程序可以使用同一个动态库    2.    开发模式好。要求设计者对功能划分得更好   但动态库装载的时候慢，特别是运行中装载有明显延迟。 静态库的优点：      代码装载速度快，执行速度略比动]]></description><category></category></item><item><title><![CDATA[文件访问权限规则]]></title><link>https://blog.youkuaiyun.com/mindview/article/details/2044150</link><guid>https://blog.youkuaiyun.com/mindview/article/details/2044150</guid><author>mindview</author><pubDate>Mon, 14 Jan 2008 22:16:00 +0800</pubDate><description><![CDATA[一    用名字大开任一类型的文件时，对改文件中包含的每一个目录，包括它可能隐含的当前工作目录都应该具有执行权限。     注：对于目录的读权限和执行权限的意义是不同的。读权限允许读目录，获得在该目录中所有文件名的列表。而执行权限，允许我们通过该目录。二    对一个文件的读（写）权限决定了我们是否能够打开该文件进行读（写）操作。三   为了在open函数中对一个文件指定o_trunc标志，必须对]]></description><category></category></item><item><title><![CDATA[gcc常见选项（zz）]]></title><link>https://blog.youkuaiyun.com/mindview/article/details/2043922</link><guid>https://blog.youkuaiyun.com/mindview/article/details/2043922</guid><author>mindview</author><pubDate>Mon, 14 Jan 2008 18:50:00 +0800</pubDate><description><![CDATA[ 前三章：要点 1。强烈推荐使用-Wall选项；   注：Warning 的显示格式：    ﬁle:line-number:message 2。编译选项-o 文件名：直接产生可执行文件-c 文件名：只编译为.o的库文件，不链接  （.c => .o ） 在将多个.o连接为一个可执行文件时，仅使用-o指定可执行文件名即可，不需要使用-Wall]]></description><category></category></item><item><title><![CDATA[gcc入门详解(zz)]]></title><link>https://blog.youkuaiyun.com/mindview/article/details/2043912</link><guid>https://blog.youkuaiyun.com/mindview/article/details/2043912</guid><author>mindview</author><pubDate>Mon, 14 Jan 2008 18:43:00 +0800</pubDate><description><![CDATA[ 作为自由软件的旗舰项目，Richard Stallman 在十多年前刚开始写作 GCC 的时候，还只是把它当作仅仅一个 C 程序语言的编译器；GCC 的意思也只是 GNU C Compiler 而已。经过了这么多年的发展，GCC 已经不仅仅能支持 C 语言；它现在还支持 Ada 语言、C++ 语言、Java 语言、Objective C 语言、Pascal 语言、COBOL语言，以及支持函数式编]]></description><category></category></item></channel></rss>