![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
80386 汇编程序设计
文章平均质量分 79
ttzyanswer
这个作者很懒,什么都没留下…
展开
-
80386 ASM程序设计基础 (一)
80386 ASM程序设计基础,呵呵,这是最近一段时间我的业余爱好。 80386处理器是Intel公司80×86发展史上的里程碑,它不但兼容先前的8086/8088,80186,80286处理器,而且也为后来的486,Pentium(586),Pentium Pro(686)的发展原创 2008-01-24 13:53:00 · 1201 阅读 · 1 评论 -
80386处理器的寻址方式 (二)
80386处理器的寻址方式 在实式模式下,80386处理器的最大寻址空间仍然为1M,和8086/8088相似。即段地址*10H+段内偏移地址,从而形成20位地址。此种模式下,段基址是16的倍数,长度最大不超过64K。在保护模式下,80386处理器可以使用所有的物理内存。段基址可以是原创 2008-01-24 14:10:00 · 1665 阅读 · 1 评论 -
80386 算术运算指令,逻辑运算指令,移位指令 (三)
算术运算指令,逻辑运算指令,移位指令AA.算术运算指令A.加减法运算ADD,ADC,INC,SUB,SBB,DEC,CMP,NEGa.ADD,和8086功能,用法相同,不过支持32位操作,下面的语句都是合法的。ADD ESI,EDIADD EAX,DWORD PTR [1000H]b.ADC,带进位的加法指令,即OPRDS+OPRDD+CF,其中OPRDS代表源操作数,OPRDD代表目的操作,C原创 2008-01-24 14:16:00 · 2999 阅读 · 0 评论 -
80386 控制转移指令,串操作指令 (四)
控制转移指令,串操作指令80386控制转移指令包括:转移指令,循环指令,过程调用和返回指令。A.转移指令包括无条件转移指令JMP和条件转移指令,无条件转移指令分为段内直接转移,段内间接转 移,段间直接转移,段间间接转移。由于80386有保护模式和实模式,在实模式下,段内转移的范围在-128~127,段间转移最大范围为64K。在保护 模式需要用48位指针,即CS:EIP(16位+32位)。条件转原创 2008-01-24 14:44:00 · 1914 阅读 · 0 评论 -
80386 高级语言支持,条件字节设置指令 (五)
高级语言支持,条件字节设置指令AA.高级语言支持指令,开始于80186,主要是用来简化高级语言的某些特征,总共有3条指令:ENTER,LEAVE,BOUNDa.ENTER,LEAVE,建立与释放堆栈框架命令。在C语言中,栈不仅用来向函数传递入口参数,而 且在函数内部的局部变量也存放在栈中。为了准确地存取这些这些局变量和准确地获得入口参数,就需要建立堆栈框架,先看一个小程序://C Prog原创 2008-01-24 15:16:00 · 881 阅读 · 0 评论 -
80386 汇编程序设计 80386实模式下编程(六)
80386在实模式下是一个更快的8086,它不但可以进行32位操作,而且还可以进32位寻址,并且 还可以使用80386的扩展指令。不过,由于是在实模下,寻址的最大空间为1M。在一个段内,段的最大长度不超过64K,否则就会发生异常。在8086下定义一个段的完整格式是:段名 [定位类型] [组合类型] [‘类别’]80386下定义一个段的完整格式是:段名 [定位类型] [组合类型] [‘类别’] [属原创 2008-01-24 15:30:00 · 1519 阅读 · 0 评论 -
80386 汇编程序设计 80386实模式下编程II(七)
虽然80386处理器要较以前的处理器的功能大大增强,但这些功能只能在保护模式下才能全部得到发挥。在实模式下最大寻址空间只有1M,但在保护模式最大 寻址空间可达4G,可以访问到所有的物理内存。同时由于引入虚拟内存的概念,在程序设计中可使用的地址空间为64TB。80386处理器采用了可扩充的分 段管理和可选的分页管理机制,这两个存储管理机制由MMU(Memory Management Unit)部件来原创 2008-01-24 15:44:00 · 1360 阅读 · 0 评论 -
手工获取kernel基地址
首先回顾一下几个结构:typedef struct _RTL_USER_PROCESS_PARAMETERS{ ULONG MaximumLength; // 00h ULONG Length; // 04h ULONG Flags; // 08h ULONG DebugFlags; // 0Ch PVOID ConsoleHandle; // 10h ULONG ConsoleFlags;原创 2008-12-14 13:47:00 · 782 阅读 · 0 评论 -
Win32Asm教程
Win32Asm教程 翻译:taowen这是我的Win32汇编教程。它总是在创建中,我会不停地添加内容。通过上面的next和prev链接,你可以转到后面和前面一页。导言先来对这个教程做个小小的介绍。Win32Asm不是一个非常流行的编程语言,而且只有为数不多(但很好)的教程。大多数教程都集中在编程的win32部分(例如,WinAPI,标准Windows编程技术的使用等),而不是汇编语言原创 2008-12-14 22:55:00 · 1275 阅读 · 0 评论