汇编和逆向
文章平均质量分 67
黑暗中的狩猎者
这个作者很懒,什么都没留下…
展开
-
memmove 和 memcpy的区别
memcpy和memmove()都是C语言中的库函数,在头文件string.h中,作用是拷贝一定长度的内存的内容,原型分别如下:void *memcpy(void *dst, const void *src, size_t count);void *memmove(void *dst, const void *src, size_t count); 他们的作用是一样的,转载 2014-11-13 14:41:43 · 542 阅读 · 0 评论 -
汇编语言学习笔记 第三节:算术运算指令
1、加减运算 add(addition)、sub(subtract),格式:add , / sub , add指令用中的数据加上中的数据,并将结果存储在中。 sub指令用中的数据减去中的数据,并将结果存储在中。 adc(addition with carry)、sbb(substract with borrow),使用格式原创 2015-08-22 20:30:06 · 859 阅读 · 0 评论 -
汇编语言中的有符号数和无符号数
一、只有一个标准 在汇编语言层面,声明变量的时候,没有 signed 和 unsignde 之分,汇编器统统,将你输入的整数字面量当作有符号数处理成补码存入到计算机中,只有这一个标准!汇编器不会区分有符号还是无符号然后用两个标准来处理,它统统当作有符号的!并且统统汇编成补码!也就是说,db -20 汇编后为:EC ,而 db 236 汇编后也为 EC 。这里有一个小问题,思转载 2015-08-21 13:24:50 · 5888 阅读 · 3 评论 -
汇编语言学习笔记 第二节:数据传送指令
1、mov指令 语法:mov , 将中的数据复制到中,同时该数据不会从中移除。不能直接将数据从内存单元移到段寄存器中,必须使用通用寄存器作为中间跳板。 movsb (move string byte):以字节为传送单位,一次传送1个字节。 movsw (move string word):以字为传送单位,一次传送2个字节。 movsd原创 2015-05-06 14:36:49 · 880 阅读 · 0 评论 -
我的参考书籍
本人的学习笔记中大多来自所购买的纸质图书和从网上查阅到的资料。总结整理,以便自己复习巩固。现将参考到图书明细整理于此,如有冒犯之处,万望宽恕,不胜感激。1、《Windows环境下32位汇编语言程序设计(典藏版)》,罗云彬。2、《x86汇编语言-从实模式到保护模式》,李忠、王晓波、余洁。3、《灰帽黑客(第三版)》,【美】Allen Harper,Shon Harris等。4、《C++原创 2015-03-13 16:44:49 · 378 阅读 · 0 评论 -
汇编语言学习笔记 第一节:寄存器
寄存器(英文register)是CPU内部用来暂存指令、数据、地址的元件。随着CPU的升级,寄存器经历了16位、32位到64位的演变,理解寄存器是理解计算机运行原理和掌握汇编语言的基础环节。下面将对目前使用最广泛的32位寄存器进行总结以便加深自己对寄存器的理解。 从寄存器的用途来看,可分为通用寄存器、指令指针、标志寄存器和段寄存器等4类。 一、通用寄存器原创 2015-03-17 16:29:38 · 445 阅读 · 0 评论 -
汇编语言中缩写的英文全称(整理中)
汇编ah&al=ax(accumulator):累加寄存器bh&bl=bx(base):基址寄存器ch&cl=cx(count):计数寄存器dh&dl=dx(data):数据寄存器sp(stack pointer):堆栈指针寄存器bp(base pointer):基址指针寄存器si(source index):源变址寄存器di(destination index):原创 2015-03-10 20:53:41 · 3158 阅读 · 0 评论 -
“堆”和“栈”的区别
一、数据结构的栈和堆首先在数据结构上要知道堆栈,尽管我们这么称呼它,但实际上堆栈是两种数据结构:堆和栈。堆和栈都是一种数据项按序排列的数据结构。我们先从大家比较熟悉的栈说起吧,它是一种具有后进先出性质的数据结构,也就是说后存放的先取,先存放的后取。这就如同我们要取出放在箱子里面底下的东西(放入的比较早的物体),我们首先要移开压在它上面的物体(放入转载 2015-03-12 15:56:43 · 398 阅读 · 0 评论 -
#pragma大全
C和C++的每个实现对它的主机或操作系统都支持一些独有的特征。例如,某些程序须对存放数据的存储器区域进行精确的控制,或必须控制特定函数接受参量的方式。#pragma指令对每个编译器给出了一个方法,在保持与C和C++语言完全兼容的情况下,给出主机或操作系统专有的特征。依据定义,编译指示是机器或操作系统专有的,且对于每个编译器都是不同的。语法#pragma 语言符号字转载 2014-12-18 10:46:18 · 563 阅读 · 0 评论 -
汇编语言学习笔记 第四节:逻辑运算指令
1、and指令2、or指令3、xor指令4、not指令5、test指令原创 2015-08-22 20:49:24 · 803 阅读 · 0 评论