摘要: 源码如下: 运行结果如下: 源码解析: 1.首先程序跳转至LABEL_BEGIN处,jmp LABEL_BEGIN。将ds、es、ss段寄存器全部初始化为当前代码段。 2.初始化32位代码段描述符 在实模式下,也就是8086的16位的CPU的寻址方式是段x16+偏移,而在保护模式下,段寄存器值变成了 阅读全文
posted @ 2016-04-02 13:52 是非猫 阅读(2193) 评论(0) 推荐(0) 编辑
摘要: a.编译 首先编译源码: nasm boot.asm -o boot.bin 或者 nasm boot.asm -o boot.com(在DOS中运行) 然后创建一个软盘映像,进入安装好的Bochs目录下: bximage Create new floppy or hard disk image | 阅读全文
posted @ 2016-03-30 12:21 是非猫 阅读(1211) 评论(0) 推荐(1) 编辑
摘要: 在内嵌汇编中,可以将C语言表达式指定为汇编指令的操作数,而且不用去管如何将C语言表达式的值读入哪个寄存器,以及如何将计算结果写回C 变量,你只要告诉程序中C语言表达式与汇编指令操作数之间的对应关系即可, GCC会自动插入代码完成必要的操作。1、简单的内嵌汇编例: __asm__ __volatile 阅读全文
posted @ 2016-03-15 16:02 是非猫 阅读(4055) 评论(1) 推荐(1) 编辑
摘要: 【版权所有,转载请注明出处。出处:http://www.cnblogs.com/joey-hua/p/5138585.html】crackme项目jni的关键代码(项目地址见文章底部),获取当前程序的包名com.example.shelldemo和com.example.nocrack对比,正常运行... 阅读全文
posted @ 2016-01-21 09:54 是非猫 阅读(4525) 评论(2) 推荐(0) 编辑
摘要: 【版权所有,转载请注明出处。出处:http://www.cnblogs.com/joey-hua/p/5138585.html】 项目关键java代码为,将tv设置为从jni读取的字符串,这里的破解内容是直接从apk动态调试修改最终显示在tv里的字符内容 1.工具介绍 Apktool,反编译源码用 阅读全文
posted @ 2016-01-18 11:00 是非猫 阅读(6187) 评论(4) 推荐(2) 编辑
摘要: 【版权所有,转载请注明出处。出处:http://www.cnblogs.com/joey-hua/p/5138585.html】项目jni的关键代码(项目地址见文章底部),获取当前程序的包名com.example.shelldemo和com.example.nocrack对比,正常运行结果是this... 阅读全文
posted @ 2016-01-15 10:20 是非猫 阅读(6252) 评论(0) 推荐(2) 编辑
摘要: 下面是伪代码,这里为了效率更高效,把切分值改成随机化,算法原码请参考 算法-5.快速排序 1.最坏情况分析 如果快速排序中每一层递归上所做的都是最坏情况划分,则运行时间为Θ(n2)。从直觉上看,这就是最坏情况运行时间。下面来证明。 利用代换法,可以证明快速排序的运行时间为O(n2)。设T(n)是过程 阅读全文
posted @ 2016-01-13 19:49 是非猫 阅读(1238) 评论(0) 推荐(0) 编辑
摘要: 问题:假设你需要找一个女朋友。你先前的寻找尝试都以失败告终,所以你决定找一个相亲代理。相亲代理每天给你推荐一个女孩纸。你会面谈此人,然后决定要不要与她交往。你必须付给相亲代理一小笔费用来面谈。要真正地找到一个女朋友则要花更多的钱,因为你必须和目前的女朋友分手,还要付一大笔中介费给相亲代理。你的诺言是 阅读全文
posted @ 2016-01-08 17:14 是非猫 阅读(1121) 评论(0) 推荐(0) 编辑
摘要: 计算级数∑最常用的方法是数学归纳法。例如,我们来证明等差级数命题n∑ k 的值等于1/2*n(n+1)k=1容易看出,当n=1时,这一结论是成立的,因此可以归纳假设对n成立,并证明对n+1成立。我们有n+1 n∑ k = ∑ k + (n+1) = 1/2*n(n+1) + (n+1) = 1/... 阅读全文
posted @ 2016-01-02 17:59 是非猫 阅读(2085) 评论(0) 推荐(0) 编辑
摘要: 【版权所有,转载请注明出处。出处:http://www.cnblogs.com/joey-hua/p/5138585.html】因公司项目需要对app加固,经过本人数月的研究,实现了一套完整的仿第三方加固如爱加密等的加固方案(第三方加固价钱不菲,一整套针对金融app方案10~20万/年),从对原项目... 阅读全文
posted @ 2015-12-25 18:30 是非猫 阅读(3031) 评论(0) 推荐(2) 编辑
摘要: 1.具体算法/** * Created by huazhou on 2015/12/6. */public class TestSearch { public static void main(String[] args){ Graph G = new Graph(new In(... 阅读全文
posted @ 2015-12-15 15:09 是非猫 阅读(508) 评论(0) 推荐(0) 编辑
摘要: 1.具体算法/** * Created by huazhou on 2015/12/6. */public class TestSearch { public static void main(String[] args){ Graph G = new Graph(new In(... 阅读全文
posted @ 2015-12-15 14:55 是非猫 阅读(558) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2015-12-15 14:44 是非猫 阅读(624) 评论(0) 推荐(0) 编辑
摘要: 1.具体算法/** * 算法3.4 红黑树 * Created by huazhou on 2015/12/2. */public class RedBlackBST, Value> { private Node root; private final boolean RED = tru... 阅读全文
posted @ 2015-12-15 14:40 是非猫 阅读(530) 评论(0) 推荐(0) 编辑
摘要: 二叉查找树得以广泛应用的一个重要原因就是它能够保持键的有序性,因此它可以作为实现有序符号表API中的众多方法的基础。这使得符号表的用例不仅能够通过键还能通过键的相对顺序来访问键值对。下面,我们要研究有序符号表API中各个方法的实现。1.最大键和最小键如果根结点的左链接为空,那么一棵二叉查找树中最小的... 阅读全文
posted @ 2015-12-01 20:03 是非猫 阅读(580) 评论(0) 推荐(0) 编辑