
#汇编
文章平均质量分 66
Dugege007
想成为技术大佬
展开
-
汇编基础2.2——堆栈及内存操作常用指令
PUSH指令向堆栈中压入数据修改栈顶指针ESP寄存器使用PUSH指令可向堆栈中依次存入数据//r:通用寄存器,r8表示8位通用寄存器//m:内存,m8表示8位内存//imm:立即数,imm8表示8位立即数PUSH r32 //将 32位通用寄存器 压入堆栈PUSH r16 //...PUSH m32PUSH m16PUSH imm32PUSH imm16PUSH imm8//相当于MOV DWORD PTR DS:[18FF88],1 //将值存入堆栈中S原创 2020-09-01 00:28:04 · 1332 阅读 · 0 评论 -
汇编基础2.1——堆栈与内存
堆栈就是一块内存,操作系统在程序启动的时候已经分配好的,供程序执行时使用的内存。(与数据结构中的堆栈无关)注:ESP为栈指针寄存器,记录当前使用堆栈的地址(从大地址向小地址用)FS储存堆栈在内存中位置的地址(在 FS+4、FS+8 查看该堆栈大小)堆栈内存使用顺序为从后向前当使用数据超出堆栈大小时堆栈溢出(如递归数据较大或写错时),导致程序卡住或崩溃堆栈就是内存(4GB)的草稿纸...原创 2020-08-31 23:48:54 · 591 阅读 · 0 评论 -
汇编基础1.2——常用汇编指令
常用汇编指令总结原创 2020-07-05 16:36:54 · 847 阅读 · 0 评论 -
汇编基础1.1——内存
内存运行方式进程1 4GB物理内存进程2 4GB内存条/其他硬件存储设备内存地址十六进制 0x00000000读写内存的方式//将立即数写入内存MOV BYTE PTR DS:[00000000],1//将寄存器中的内容写入内存MOV DWORD PTR DS:[00000000],EAX//当寄存器宽度超过一个内存地址宽度时,内存会自动向后分配空间,连续使用;//被赋值内容宽度需大于等于赋值寄存器的宽度,若大于,则被复制内存自动缩小宽度。//将内存写入寄存器MOV EAX,DW原创 2020-07-05 16:35:24 · 420 阅读 · 0 评论 -
汇编基础1.0——通用寄存器
通用寄存器32位16位8位(低)8位(高)EAXAXALAHECXCXCLCHEDXDXDLDHEBXBXBLBHESPSPEBPBPESISIEDIDI32位通用寄存器32位寄存器功能EAXECXEDXEBXESPEBPESIEDI*EIP存储CPU下次要执行的指令...原创 2020-07-05 16:09:31 · 454 阅读 · 0 评论 -
汇编基础2.3——标志寄存器
标志寄存器标志寄存器中有一些位,它们控制了CPU在不同情况下所做出的反应(初学小白的总结,目前稍作记录,深入学习后会补充完善)通常情况下,运算类的指令会影响标志寄存器中标志的变化0位 Carry Flag(CF):进位标志若算数操作产生的结果在最高有效位(most-significant bit)发生进位或借位,则将其置1,反之置0这个标志通常表示无符号整型的运算的溢出状态2位...原创 2020-01-05 22:22:25 · 357 阅读 · 0 评论 -
汇编基础0.3——有无符号数的编码规则
无符号数的编码规则原码、反码、补码均正常编码有符号数的编码规则原码:首位为符号位(正数为0,负数为1),其余各位为数值本身的绝对值反码:正数的反码与原码相同负数的符号位为1,其余位对原码取反补码:正数的补码与原码相同负数的符号位为1,其余位对原码取反+1注:在存储数据时,正数原码存储,负数补码存储...原创 2020-01-05 13:19:02 · 565 阅读 · 0 评论 -
汇编基础0.1——十六进制对应的二进制
二进制与十六进制对照表原创 2020-01-05 12:41:16 · 1268 阅读 · 0 评论 -
汇编基础0.2——计算机中常见的数据宽度
计算机中常见的数据宽度原创 2020-01-05 12:51:00 · 577 阅读 · 0 评论