汇编伪指令
摘要:【汇编伪指令】 伪指令语句是用于指示汇编程序如何汇编源程序,所以这种语句又叫命令语句。例如源程序中的伪指令语句告诉汇编程序:该源程序如何分段,有哪些逻辑段在程序段中哪些是当前段,它们分别由哪个段寄存器指向;定义了哪些数据,存储单元是如何分配的等等。伪指令语句除定义的具体数据要生成目标代码外,其他均没有对应的目标代码。伪指令语句的这些命令功能是由汇编程序在汇编源程序时,通过执行一段程序来完成的,而不是在运行目标程序时实现的。 伪指令没有指令动作,旧像高级语言的编译预处理一样,他们是指导汇编过程的,而不是参与汇编代码生成的。 伪指令没有对应的机器代码,它不像指令那样由CPU来执行,它 是由M...
阅读全文
x86之寄存器详解
摘要:【x86之寄存器详解】 1、在32位x86下,CS(代码段寄存器)、SS(栈寄存器)、DS(数据寄存器)、ES(附加寄存器)依旧是16位。在实模式下(16位模式),这些寄存器表示实际的地址,在保护模式下(32位模式),这些寄存器表示LDT中的偏移。 LDTR的装载:LDTR由程序员可见的16位的选择器和程序员不可见的8字节描述符高速缓存组成。在初始化或任务切换过程中,把描述符对应任务LDT的选择器装入LDTR可见部分,然后从GDT中取出LDT描述符,填充在LDTR不可见的高速缓存中。 2、其它寄存器 3、累加器 4、指示器 4、标志寄存器EFLAGS
阅读全文
x86之段选择符
摘要:【x86之段选择符】 1、段选择符对GDT和LDT提供索引、全局标志及请求特权信息。共16位,左边13位提供索引,可提供最大2^13=8192个索引(这点符号GDT、LDT的最大描述符表个数)。右边第3位决定从GDT还是LDT进行索引。最后2位指出请求特权级。 2、段选择器描述解析 3、段选择器符程序可见
阅读全文
x86之描述符表寄存器
摘要:【x86之描述符表寄存器】 1、x86有4个描述符表寄存器 1)全局描述符表寄存器(GDTR):32(基址) + 16(边界) 位 2)中断描述符表寄存器(IDTR):32(基址) + 16(边界) 位 3)局部描述符表寄存器(LDTR):16(选择器) + 64 (16(属性)+32(基址)+16(边界))位 4)任务寄存器(TR):16(选择器) + 64 (16(属性)+32(基址)+16(边界))位 注:上图LDT、TR寄存器字段分配错误。对于每一个段,边界字段是20bit,1MB。 2、GDT和IDT 3、LDT和TSS
阅读全文
x86之段描述符
摘要:【x86之段描述符】 1、在保护模式下,把有关一个段的信息,即段基址、限长、类型、访问权限及其它属性信息放在一个8字节长的数据结构中,这种数据结构称为段描述符,简称描述符。 2、为了查找和识别,把系统中的描述符按线性表的形式来组织,即构成描述符表。描述符表由操作系统建议,并由操作系统维护。有三种类型的描述符表: 1)全局描述符表(Global Descriptor Table, GDT):GDT最大64KB,每个描述符8字节,故最多涵64kb/8=8192个描述符。 2)局部描述符表(Local Descriptor Table, LDT):LDT同GDT。 3)中断描述符表(Inter...
阅读全文
HTTP之三类认证
摘要:【HTTP之三类认证】 1、Basic认证:http://space.itpub.net/23071790/viewspace-709367 2、Digest认证:http://robblog.iteye.com/blog/556436 3、NTLM认证:http://book.51cto.com/art/201106/267996.htm
阅读全文
SSL原理
摘要:【SSL原理】 参考:http://leo-dream.iteye.com/blog/313592 1,客户端向服务端发出请求,服务端将公钥(以及服务端证书)响应给客户端; 2,客户端接收到服务器端端公钥与证书,验证证书是否在信任域内,不信任则结束通信,信任则使用服务端传过来的公钥生成一个“预备主密码”,返回给服务端。 3,服务端接收客户端传过来的“预备主密码”密文,使用私钥解密。非对称加密的安全性也就在于此了,第三方无法获取到“预备主密码”的明文,因为除了服务端,其他任何人是没有私钥的。 4,双方使用“预备主密码”生成用于会话的“主密码”。确认后,结束本次SSL握手,停止使用非对称...
阅读全文