![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
ASM
Night-Wish
这个作者很懒,什么都没留下…
展开
-
简明x86汇编语言教程(1)
http://www.bianceng.cn/Programming/hb/第○章 写在前面我不想夸大或者贬低汇编语言。但我想说,汇编语言改变了20世纪的历史。与前辈相比,我们这一代编程人员足够的幸福,因为我们有各式各样的编程语言,我们可以操作键盘、坐在显示器面前,甚至使用鼠标、语音识别。我们可以使用键盘、鼠标来驾驭“个人计算机”,而不是和一群人共享一台使用笨重的继电器、开关去操作的巨转载 2013-02-07 09:18:55 · 522 阅读 · 0 评论 -
简明x86汇编语言教程(3)
2.2 使用寄存器在前一节中的x86基本寄存器的介绍,对于一个汇编语言编程人员来说是不可或缺的。现在你知道,寄存器是处理器内部的一些保存数据的存储单元。仅仅了解这些是不足以写出一个可用的汇编语言程序的,但你已经可以大致读懂一般汇编语言程序了(不必惊讶,因为汇编语言的祝记符和英文单词非常接近),因为你已经了解了关于基本寄存器的绝大多数知识。在正式引入第一个汇编语言程序之前,我粗略地介绍一下汇转载 2013-02-07 09:55:13 · 620 阅读 · 0 评论 -
简明x86汇编语言教程(2)
第二章 认识处理器中央处理器(CPU)在微机系统处于“领导核心”的地位。汇编语言被编译成机器语言之后,将由处理器来执行。那么,首先让我们来了解一下处理器的主要作用,这将帮助你更好地驾驭它。典型的处理器的主要任务包括从内存中获取机器语言指令,译码,执行 根据指令代码管理它自己的寄存器 根据指令或自己的的需要修改内存的内容响应其他硬件的中断请求.一般说来,处理器拥有对整个系统的所有总线的控转载 2013-02-07 09:37:21 · 550 阅读 · 0 评论 -
简明x86汇编语言教程(6)
4.0 利用子程序与中断已经掌握了汇编语言?没错,你现在已经可以去破译别人代码中的秘密。然而,我们还有一件重要的东西没有提到,那就是自程序和中断。这两件东西是如此的重要,以至于你的程序几乎不可能离开它们。4.1 子程序在高级语言中我们经常要用到子程序。高级语言中,子程序是如此的神奇,我们能够定义和主程序,或其他子程序一样的变量名,而访问不同的变量,并且,还不和程序的其他部分相冲突。转载 2013-02-07 19:58:03 · 1084 阅读 · 0 评论 -
简明x86汇编语言教程(7)
5.0 编译优化概述优化是一件非常重要的事情。作为一个程序设计者,你肯定希望自己的程序既小又快。DOS时代的许多书中都提到,“某某编译器能够生成非常紧凑的代码”,换言之,编译器会为你把代码尽可能地缩减,如果你能够正确地使用它提供的功能的话。目前,Intel x86体系上流行的C/C++编译器,包括Intel C/C++ Compiler, GNU C/C++ Compiler,以及最新的Mic转载 2013-02-07 20:51:32 · 491 阅读 · 0 评论 -
简明x86汇编语言教程(4)
第三章 操作内存在前面的章节中,我们已经了解了寄存器的基本使用方法。而正如结尾提到的那样,仅仅使用寄存器做一点运算是没有什么太大意义的,毕竟它们不能保存太多的数据,因此,对编程人员而言,他肯定迫切地希望访问内存,以保存更多的数据。我将分别介绍如何在保护模式和实模式操作内存,然而在此之前,我们先熟悉一下这两种模式中内存的结构。3.1 实模式事实上,在实模式中,内存比保护模式中的结构更转载 2013-02-07 10:06:07 · 587 阅读 · 0 评论 -
简明x86汇编语言教程(5)
3.4 串操作我们前面已经提到,内存可以和寄存器交换数据,也可以被赋予立即数。问题是,如果我们需要把内存的某部分内容复制到另一个地址,又怎么做呢?设想将DS:SI处的连续512字节内容复制到ES:DI(先不考虑可能的重叠)。也许会有人写出这样的代码:NextByte:mov cx,512mov al,ds:[si]mov es:[di],alinc si转载 2013-02-07 19:51:18 · 542 阅读 · 0 评论