前面几篇文章从代码层面介绍了Kilim的基本原理,但是对于其中的一些细节,比如Task的执行状态如何管理等问题从代码上依然得不到答案,本文即再深入到字节码层面来解答。
1. Kilim字节码改写前后的代码有什么区别?
这里还是先上Kilim官方文档中的一张图,这张图清晰的展现出原始的代码与经Kilim改写后的协程代码。
可以看出左边的原始代码,与我们常见的函数相比有所不同,这里显示声明...
分类:
编程语言 时间:
2015-05-02 20:47:28
阅读次数:
249
clang.l: lex文件本身对C语言中标识符词法分析;
add_run.h: 通过add_run()函数将对匹配代码段识别出的标记符及相同标记符的数量存放到数组Token_Array[]中;
algollike.h文件:定义Non_Finals、Non_Initials、Openers、Closers四个标记集;被language.h所调用;
compare.h文件:将每一个新的文本与相...
分类:
编程语言 时间:
2015-05-02 20:47:51
阅读次数:
179
说到SIM,真真的被Dick Grune这老教授折服了,以前一直以为自己的编译原理学的蛮好的,现在才察觉,无知真的很可怕。所谓的大学课堂,就好像一本书的绪论。应该没有几个人在看完了一本书的绪论后就对这本书的内容了如指掌了吧!更何况我们所学的是一门发展了几十甚至上百千年的学科。
SIM是一个检测计算机程序相似性的实用程序,当然在后期的发展中也有扩展到对文本相似度的判别。...
分类:
其他好文 时间:
2015-05-02 20:47:30
阅读次数:
695
大整数乘法...
分类:
其他好文 时间:
2015-05-02 20:47:02
阅读次数:
319
计算机科学工作坊检测抄袭意见书
Dick Grune
Matty Huntjens
Vakgroep Informatica
Faculteit Wiskunde & Informatica
Vrije Universiteit
De Boelelaan 1081
1081 HV AMSTERDAM
November 1989
摘要
在大多数计算机科学研讨会中...
分类:
其他好文 时间:
2015-05-02 20:46:41
阅读次数:
140
这里主要论述了对TabPageIndicator和UnderLinePageIndicator两种界面的使用方式和总结:
开始我用的是ViewPager+Fragment 实现的app主界面,后来老师告诉我使用WPS的主界面布局方式效果可能会好一些~~~折腾了好几个小时总算是搞明白了TabPageIndicator 的用法,也写出了demo。。。。。。在实现的过程中让人蛋疼的是.9path图的问...
分类:
其他好文 时间:
2015-05-02 20:48:20
阅读次数:
501
最近学习了一下树状数组,这道题纠结了很久,终究是因为没有明白树状数组怎么用。
这里我就以实用主义说一下使用方法(其实我觉得其原理应该能对我们更有启发,也许会带来很多潜在的好处):
这里需要注意的是,bit的实现代码中的bit数组一开始必须清零,这个数组并不是用来储存元素的,而是为实现这个数据结构而存在的。 你需要存储的元素是要通过那个add函数添加的,而求和则是要通过sum函数实现的,而这个...
分类:
编程语言 时间:
2015-05-02 20:47:20
阅读次数:
170
做重力感应的朋友兴许能用上,我这里写上来用于有时候自己忘了还能看一下,因为我不认为学东西就能一辈子都记得很牢,所以有时候还是为自己行一下方便,给自己写博客,哈哈。
做Unity的重力感应游戏的时候,我们需要用到这样一个参数:Input.acceleration,这是一个Vectors3类型的一个Input的属性,它里面有三个参数分别是x,y,z。接下来给我大家贴上我画的一张图,这样大家看起来就很...
分类:
移动开发 时间:
2015-05-02 20:47:48
阅读次数:
302
简单的数学题目,就是解方程。
不过需要注意的是,解出来的两个解没有负数。
输入m和n,方程1:x + y = m;方程2:| x - y | = n;
x = (n + m)/ 2; y = (-n + m)/ 2;
注意:n + m和m - n 必须是偶数!~~做个判断就OK了。
AC的代码:
#include
using namespace std;
int main()
{
...
分类:
其他好文 时间:
2015-05-02 20:46:48
阅读次数:
200
#include
#include
#include
int main(int argc, char* argv[])
{
IplImage *src = 0; //源图像指针
IplImage *dst = 0; //目标图像指针
float scale = 0.618; //缩放倍数为0.618倍
CvSize dst_cvsize; /...
分类:
其他好文 时间:
2015-05-02 20:46:26
阅读次数:
203
声明:本系列博客参考资料《大话设计模式》,作者程杰。
桥接模式:在软件系统中,某些类型由于自身的逻辑,它具有两个或多个维度的变化,那么如何应对这种“多维度的变化”?这就要使用桥接模式——将抽象部分与它的实现部分分离,使他们可以独立地变化。
UML类图:
角色介绍:
抽...
分类:
Web程序 时间:
2015-05-02 20:46:49
阅读次数:
182
使用过百度地图的开发者应该都知道原始百度地图的开发的基本流程,但是随着百度地图的更新,百度地图的api有了翻天覆地的变化,最新版本的sdk为v3.4
2015年4月14日上线,优化了许多接口的设计,简单了地图的开发方式。但是,对没有接触过新版地图开发的人来说,依然是望尘莫及,今天我们就一起来学习下最新版百度地图的开发吧
1.获取开发者KEY
下面是官方的说明:
注意:为了给用户提供更优质的...
分类:
其他好文 时间:
2015-05-02 20:45:37
阅读次数:
216
#include
#include
#include
#include
#include
using namespace std;
#define maxn 1000000 + 10
#define Lson L, mid, root<<1
#define Rson mid+1, R, root<<1|1
#define INF 0x7ffffff
int Min[maxn<<2],...
分类:
其他好文 时间:
2015-05-02 20:47:23
阅读次数:
125
题目:给你n个文件,问用b+1位2进制数能否进行编号(不包括全0的编号)。
分析:简单题。直接比较n与(1
说明:使用long long防止溢出。
#include
#include
#include
#include
#include
#include
using namespace std;
int main()
{
long long n,b,m;
while (c...
分类:
其他好文 时间:
2015-05-02 20:46:22
阅读次数:
177
接着上一节的例子
我们在README.txt文件中再添加一段内容(add modify1):1 add a file called README
2 add modify1
然后提交到版本库查看日志使用$ git log 显示文件的每次提交修改的记录,git log命令显示从最近到最远的提交日志
如果嫌输出信息太多,看得眼花缭乱的,可以试试加上–pretty=oneline参数:
注意...
分类:
其他好文 时间:
2015-05-02 20:47:23
阅读次数:
571
构造函数: C++提供了构造函数(constructor)来处理对象的初始化。在建立对象时自动执行。构造函数的名字必须与类名同名,它不具有任何类型,不返回任何值。
构造函数总结:
①构造函数是C++中用于初始化对象状态的特殊函数。
② 构造函数在对象创建时自动被调用(默认调用),隐身调用。
③构造函数和普通成员函数都遵循重载规则。
④拷贝构造函数是对象正确初始化的重要保证,必要的时候,...
分类:
编程语言 时间:
2015-05-02 20:47:02
阅读次数:
169
DescriptionEdward has an array A with N integers. He defines the beauty of an array as the summation of all distinct integers in the array. Now Edward...
分类:
其他好文 时间:
2015-05-02 20:44:48
阅读次数:
121