- 博客(10)
- 资源 (7)
- 收藏
- 关注
原创 【编译原理】LL1文法语法分析器
上篇文章 【编译原理】语法分析——自上向下分析 分析了LL1语法,文章最后说给出栗子,现在补上去。说明:这个语法分析器是利用LL1分析方法实现的。预测分析表和终结符以及非终结符都是针对一个特定文法定义好的。输入的分析串必须以 # 开头和结尾。原始文法:E -> E + T | TT -> T * T | FF -> (E) | i消除左递归之后E -> TE'E' -> +TE' |
2016-11-30 23:23:14 35361 3
原创 Hello World之编译链接装载与执行(1)
一:前言我打算写一系列博客来说说我对Hello World在计算机中的生命旅程的理解,我是一名软件工程专业的大三学生,有关这个问题我主要的参考书有《深入理解计算机系统》、《现代操作系统》、《程序员的自我修养》,除了这些,我还参考了一些大牛的博客,如果后面需要,我会贴出来,我还在我的Centos 7系统上做了一些验证。如果上面的三本书你都看过,并且看的还算认真,能回答这个问题 https://www.
2016-11-30 23:00:33 1309 3
原创 设计模式之观察者模式
一:观察者模式定义一对多(1:n)的对象关系,如果1发生变化,那么n都会收到通知,这叫观察者模式。当然,我觉得叫”出版者——订阅者”模式更加容易理解。就像你在报社订了报纸,只要报社有新报纸出版,送报员就会给你家送一份,如果不想要,还可以退定。二:来个栗子举一个Head First书上的栗子: 首先这是一个气象局的显示系统,WeatherData是数据的来源,Subject是一个公共基础主题,Obs
2016-11-30 16:28:43 681 2
原创 设计模式之策略模式
我慢慢的开始对于一些概念给出我自己的定义,而不是去搬一些“标准”或“书”,因为一个是当我发现我之前写的博客凡是“抄”过书上的到现在我仍然需要查之外,还有一个原因是我也慢慢开始找到自己学习的方法。所以如果我的定义和概念和标准不一样,请您批判着看。另外需要注意评论,我后面很可能补充一些东西或者纠正一些东西。一:策略模式对于同一个功能的不同实现(比如鸭子的“叫声”有“呱呱叫”还有“嘎嘎叫”),将他们分别用
2016-11-29 19:05:24 439
原创 8086 汇编小程序
仅以此文记录我在Centos上使用DosBox写8086汇编小程序,不知为何DosBox总是会将我当前用户Logout,然后我必须重新登录的艰苦岁月……1:HelloWorldDATA SEGMENTstr db 'Hello World$' ;要输出的字符串必须要以$结尾DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA ;将CS和CODE,D
2016-11-19 11:13:13 17911 8
原创 glibc memcpy() 源码浅谈
其实我本来只是想搞懂为什么memcpy()函数的参数类型是void *的:我以为会在memcpy()源码中能找到答案,其实并没有,void *只是在传递参数的时候起了作用,可以让memcpy()接受不同的指针类型,比如char *,double *,struct stu *等等,没错,只是这样,至于memcpy()内部的工作原理,请继续往下看。没办法,我只好去找找memcpy的源码。代码如下。 备
2016-11-19 09:35:04 6446 7
原创 void * 是什么?
最近遇到void *的问题无法解决,发现再也无法逃避了(以前都是采取悄悄绕过原则),于是我决定直面它。在哪遇到了? 线程创建函数pthread_create()的最后一个参数void *arg,嗯?传地址还是传值?传值好像有警告。还有别的出现的地方呢看memcpy(),返回值和参数都有void *,那又怎么传呢?下面我们首先来说说void *是什么。一:void *是什么?C语言中,*类型就是指针
2016-11-19 09:12:21 28292 10
原创 IP数据报中如果不分片,分片标志值是什么?
过了好久才解决这个简单的问题,罪过罪过……答案:如果IP数据报不分片,分片标志DF(Don’t Fragment)会被设置为1。分片标志MF(More Fragment)设置为0。下面是详细解释:1:首先来一张IP数据报的报文头部结构。 2:需要注意第二行数据,有这么三个字段序列号:开始发送数据时由发送方生成。标识发送方发送的每一个数据报,如果发送的数据报未发生分片,则此值依次加1,如果发生了分
2016-11-09 20:56:41 24287 7
原创 西邮Linux兴趣小组第一次技术分享会
2016年10月30日晚,西邮Linux兴趣小组技术分享会在西安邮电大学长安校区东区逸夫教学楼FF305室成功举办。200多名来自全校不同专业的15,16级同学参加了此次分享会。 分享会于20:00正式开始,首先由小组14级成员杨博东同学为大家介绍这次系列分享活动的目的、形式以及时间安排,并且与大家分享他的Linux的使用经历和自己对Linux的看法。随后,小组15级成员康艺杰同学为大家带来了《L
2016-11-04 19:40:06 1319
原创 使用starUML一步一步画顺序图
顺序图:是UML中能表现出一个过程中各个详细步骤的模型图,过程可以理解为一个功能的执行过程。下面我们以一个简单的影院管理系统中售票功能为例来一步一步完成顺序图的构建。建模工具:starUML 版本:5.0.2.1570(新版本下面也适用) 1:首先确定功能的主功能场景如下所示。 (1)顾客向售票员提供剧目名称,和场次要求(时间)。 (2)售票员查询用户提供的剧目所在演出厅票务和位置信
2016-11-04 10:39:30 138444 17
ncurses_programs代码示例
2017-12-28
mysql-connector-c++-1.1.7-linux-glibc2.5-x86-64bit.rpm
2017-01-07
dosbox-0.74 无bug修复版(内含.EXE文件)
2016-10-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人