发现其实是一个下凸壳,所以先按斜率排序,然后判断当前直线与栈顶直线的交点是否更靠右 注意平行的情况 1 #include 2 using namespace std; 3 4 #define maxn 50005 5 #define esp 1e-8 6 struct node{ 7 ...
分类:
其他好文 时间:
2015-12-19 17:53:52
阅读次数:
223
3.61题中代码在循环时会产生6个临时的变量,故共需要六个寄存器在存放数据,但是由于处理器的六个寄存器中,%esp和%ebp不能用于存放临时数据,而且另外一个寄存器还必须用来保存乘法指令的结果。因此必须将循环中的值的数量减少到5个。当没有足够多的寄存器来保存临时数据时,编译器必须把一些局部变量放到存...
分类:
其他好文 时间:
2015-11-30 22:21:38
阅读次数:
201
一.关键字const有什么含意? 只要一听到说:“const意味着常数”,就知道我正在和一个业余者打交道。去年Dan Saks已经在他的文章里完全概括了const的所有用法,因此ESP(译者:Embedded Systems Programming)的每一位读者应该非常熟悉const能做什么和不.....
分类:
其他好文 时间:
2015-11-13 01:02:38
阅读次数:
283
看过我前面博客的朋友都清楚,函数调用主要依靠ebp和esp的堆栈互动来实现的。那么递归呢,最主要的特色就是函数自己调用自己。如果一个函数调用的是自己本身,那么这个函数就是递归函数。 我们可以看一下普通函数的调用怎么样的。试想如果函数A调用了函数B,函数B又调用了函数C,那么在堆栈中的数据是怎么保存....
分类:
编程语言 时间:
2015-11-10 15:48:51
阅读次数:
360
3.61题中代码在循环时会产生6个临时的变量,故共需要六个寄存器在存放数据,但是由于处理器的六个寄存器中,%esp和%ebp不能用于存放临时数据,而且另外一个寄存器还必须用来保存乘法指令的结果。因此必须将循环中的值的数量减少到5个。当没有足够多的寄存器来保存临时数据时,编译器必须把一些局部变量放到存...
分类:
其他好文 时间:
2015-10-27 20:16:39
阅读次数:
210
1Y86指令集体系结构 ISA:指令集体系结构,一个处理器支持的指令和指令的字节级编码 程序员可见的状态 Y86程序中的每条指令都会读取或修改处理器状态的某些部分,称为程序员可见状态。其中包括: 8个程序寄存器:%eax,%ecx,%edx,%ebx,%esi,%edi,%esp和%ebp。...
分类:
系统相关 时间:
2015-10-18 22:54:53
阅读次数:
656
第四章处理器体系结构(一)知识点总结一、Y86指令集体系结构 1.Y86处理器状态类似于IA32,有8个程序寄存器: %eax、%ecx、%edx、%ebx、%esi、%edi、%esp、%ebp。处理器的每个程序寄存器存储一个字。%esp被入栈、出栈、调用和返回指令作为栈指针。 2.3个一位...
分类:
其他好文 时间:
2015-10-18 21:26:06
阅读次数:
399
4.1.1程序员的可见的状态————Y86的每条指令都会读取或修改处理器状态的某些部分,称为程序员可见状态.如图1所示.1.程序寄存器(Program registers): %eax, %ecx, %edx, %ebx, %esi,%edi, %esp和%ebp.都是32位的.2.条件码(Cond...
分类:
系统相关 时间:
2015-10-18 19:56:31
阅读次数:
379
第四章 处理器体系结构4.1 Y86指令集体系结构一、程序员可见的状态程序员可见状态:程序中的每条指令都会读取或修改处理器状态的某些部分--8个程序寄存器:%eax,%ecx,%edx,%ebx,%esi,%edi,%esp,%ebp.他们都可以存储一个字;%esp被入栈、出栈、调用和返回指令作为栈...
分类:
其他好文 时间:
2015-10-18 18:33:11
阅读次数:
172
第四章 处理器体系结构前言:指令集结构(ISA):一个处理器支持的指令和指令的字节级编码(不同处理器有不同的ISA)4.1 Y86指令集结构 Y86的处理器状态类似于IA32 8个程序寄存器:%eax%esi%ecx%edi %edx%esp %ebx%ebp(%esp被入栈,出栈,调用和返回指令作...
分类:
其他好文 时间:
2015-10-18 18:13:07
阅读次数:
165