8086汇编和Win32汇编】的更多相关文章

8086汇编是指在某环境下汇编编译产生的程序,用机器去执行每条指令的长度为16位(可小于16),如DOS操作系统:WIN32汇编是32位环境下的汇编,如Windows(Windows也有64位的,XP和VISTA都有相应的版本).大体是差不多,当然,各自也有些细微的差别,WIN32下多了一些寄存器的操作,简化了一些运算,还有就是Windows把一些关键的东东都封装起来了,所以在Windows下WIN32汇编的程序员一般都感到不能像在DOS下那样欢快的游弋了,因为WIN32汇编用户不可能像在以前对…
win32汇编基础知识 Debug 版本|Release 版本 Debug 是"调试"的意思,Debug 版本就是为调试而生的,编译器在生成 Debug 版本的程序时会加入调试辅助信息,并且很少会进行优化,程序还是"原汁原味"的. 你没听错,不是任何一个程序都可以调试的,程序中必须包含额外的辅助信息才能调试,否则调试器也无从下手. Release 是"发行"的意思,Release 版本就是最终交给用户的程序,编译器会使尽浑身解数对它进行优化,以提…
放假了,发现自己知识面窄,趁有时间就打算折腾下Win32汇编.其实在学校也上过汇编课,是基于dos的.那时老师不务正业,老跟我们讲政治经济文化,唯独不怎么讲课;再加上自己的问题,导致了dos汇编学得好烂(几乎没学),但发现dos汇编比较少用,所以直接学Win32汇编了,基础知识薄弱遇到再补上去.我只是多了解其他知识,不求精通.如果要学好还是应该先写好dos汇编的. 介绍 Win32可执行环境的开发过程如下图 常用的编译器有Microsoft的MASM系列和Borland的TASM系列.但都存在一…
今天开始学习Win32汇编 因为自己很多都是Windows方面 所以 接触一下Win32汇编 . ;.386指令集 .model flat,stdcall ;工作模式 option casemap:none ;关键字大小写不敏感 include Windows.inc include kernel32.inc includelib kernel32.lib include user32.inc includelib user32.lib .data MessageBoxText db Messa…
这次我们将学习有关文本的诸多属性如字体和颜色等. 理论: Windows 的颜色系统是用RGB值来表示的,R 代表红色,G 代表绿色,B 代表蓝色.如果您想指定一种颜色就必须给该颜色赋相关的 RGB 值,RGB 的取值范围都是从 0 到 255,譬如您想要得到纯红色,就必须对RGB赋值(255,0,0),纯白色是 (255,255,255). 您可以用函数 SetTextColor 和 SetBkColor 来"绘制"字符颜色和背景色,但是必须传递一个"设备环境"的…
这次,我们将学习如何在窗口的客户区"绘制"字符串.我们还将学习关于"设备环境"的概念. 理论: "绘制"字符串 Windows 中的文本是一个GUI(图形用户界面)对象.每一个字符实际上是由许多的像素点组成,这些点在有笔画的地方显示出来,这样就会出现字符.这也是为什么我说"绘制"字符,而不是写字符.通常您都是在您应用程序的客户区"绘制"字符串(尽管您也可以在客户区外"绘制").Windo…
背景知识 Windows 把每一个 Win32 应用程序放到分开的虚拟地址空间中去运行,也就是说每一个应用程序都拥有其相互独立的 4GB 地址空间,当然这倒不是说它们都拥有 4GB 的物理地址空间,而只是说能够在 4GB 的范围内寻址.操作系统将会在应用程序运行时完成 4GB 的虚拟地址和物理内存地址间的转换.这就要求编写应用程序时必须格守 Windows 的规范,否则极易引起内存的保护模式错误.而过去的 Win16 内存模式下,所有的应用程序都运行于同一个 4GB 地址空间,它们可以彼此"看&…
  如何构建Win32汇编的编程环境(ONEPROBLEM个人推荐)1.首先要下载我提供的软件包(里面已经包含所有所需软件); 2.把它解压到D盘根目录下(如果需要安装在其它的地方,请注意设好路径); 3.解压后,里面有:idesetup.exe ,MASMv8.exe ,NMAKE.EXE,Var.txt和资源编辑器,Makefile.txt,Readme.txt,总共7个文件.步骤: 1.首先,双击MASMv8.exe,安装MASM32.注意,就直接安装在D盘根目录下; 2.把Var.txt…
在主程序中用call指令来调用子程序. Win32汇编中的子程序也采用堆栈来传递参数,这样就可以用invoke伪指令来进行调用和语法检查工作. 一. 子程序的定义 子程序的定义方式如下所示. 子程序名  proc [距离][语言类型][可视区域][USES 寄存器列表][,参数:类型]...[VARARG]          local 局部变量列表          指令 子程序名  endp proc和endp伪指令定义了子程序开始和结束的位置, proc后面跟的参数是子程序的属性和输入参数…
开始学习[Win32汇编],编译过程较为繁琐,做个记录. 使用 MASM32 提供的 ml.exe 和 link.exe,以及 VS2013 中的 nmake.exe 和资源编辑器. ml.exe: ml  [选项]  文件列表  [/link] link.exe: link  [选项]  文件列表 nmake.exe: nmake  [选项]  [描述文件名]  [宏定义]  [目标文件] /f 描述文件名:指定其他的描述文件名,而不是默认的 makefile 宏定义:指定新的定义,覆盖描述文…