zoukankan      html  css  js  c++  java
  • 32位汇编简介

    32位汇编

    32位汇编比16位汇编多了保护模式,将内存分为  可读 r 可写w  不可读不可写只能执行

    保护模式

    内存访问空间变大 32位寻址  内存多了属性值  多了内存分区

    实模式

    处理器被抚慰或者加电的时候实模式启动   32位只使用20位为了向下兼容

    32位汇编包含头文件格式

    include windows.inc

    include user32.inc

    include kernel32.inc

    32位汇编包含库文件格式

    includelib user32.lib

    includelib kernel32.lib

    调函数直接invoke  关于压栈入栈平栈和保存bp全部由编译器帮忙实现了

    函数传参不要用eax  因为返回值是用eax保存的,会使函数产生错乱

    函数内使用寄存器并保护寄存器环境

    Fun proc uses eax ecx eds esi  

    函数内容

    Ret

    Fun endp 自动平栈

    函数内写Pushad 保存所有寄存器环境  pushf 保存所有标志寄存器

    资源加载

    首先用资源编译器编译一个资源文件.Rc

    使用rc.exe编译这个资源弄文件(这个文件的后缀名是.rc结尾)

    编译出来之后是.RES的文件,我们把它当做obj文件使用,连接到PE文件中(exe文件中)即可

    但是我们在设计窗口类的时候,需要使用一下这个菜单资源的ID

    菜单资源的ID,在资源对应的Result.h的头文件中定义声明  比如IDC_BUT  equ  1001

    最后将资源文件和obj文件一起连接就可以了

    Link /subsystem  windows xxx.obj xxx.RE

    学如逆水行舟,不进则退。 博客园技术交流群 群 号:1073255314 (本群没人,刚刚建立 -_-!!! )
  • 相关阅读:
    单选文本及多行文本溢出问题
    div和textarea内容转换(****)
    URL OR PC/PHONE OR Strlen
    DocumentFragment(创建文档碎片节点)
    ETag
    重绘和回流
    自定义指令
    Angular JS 自定义服务
    jquery ajax 实例
    js 斐波那契序列
  • 原文地址:https://www.cnblogs.com/Mj-NaijAm/p/13618728.html
Copyright © 2011-2022 走看看