第一章:基础知识01
让编程改变世界
Change the world by program
引言
汇编语言是直接在硬件之上工作的编程语言,首先要了解硬件系统的结构,才能有效的应用汇编语言对其编程。 在本章中,对硬件系统结构的问题进行一部分的探讨,以使后续的课程可在一个好的基础上进行。 当课程进行到需要补充新的基础知识(关于编程结构或其他的)时候,再对相关的基础知识进行介绍和探讨。 本书的原则是,以后用到的知识,以后再说。 汇编课程的研究重点放在如何利用硬件系统的编程结构和指令集有效灵活的控制系统进行工作。机器语言
机器语言是机器指令的集合。 机器指令展开来讲就是一台机器可以正确执行的命令。 指令:01010000 (PUSH AX) 电平脉冲: [caption id="attachment_219" align="aligncenter" width="300"]![电子脉冲示例图](http://blog.fishc.com/wp-content/uploads/2012/07/图片124-300x66.gif)
; welcome to masm 机器码: 00011110 101110000000000000000000 01010000 101110001100011000001111 1000111011011000 1011010000000110 1011000000000000 1011011100000111 101110010000000000000000 1011011000011000 1011001001001111 1100110100010000 1011010000000010 1011011100000000 1011011000000000 1011001000000000 1100110100010000 1011010000001001 10001101000101100010101000000000 1100110100100001 1011010000001010 10001101000101100011000100000000 1100110100100001 1011010000000110 1011000000010100 1011011100011001 1011010100001011 1011000100010011 1011011000001101 1011001000111100 1100110100010000 1101010000000010 1101011100000000 1101000000001100 1101001000010100 1100110100010000 1011010000001001 10001101000101100000000000000000 1100110100100001 11001011[/codesyntax] 看到这样的程序,你会有什么感想? 如果程序里有一个“ 1 ”被误写为“ 0 ”,又如何去查找呢?
汇编语言的产生
汇编语言的主体是汇编指令
汇编指令和机器指令的差别在于指令的表示方法上。汇编指令是机器指令便于记忆的书写格式。 汇编指令是机器指令的助记符。 机器指令: 1000100111011000 操作:寄存器 BX的内容送到AX中 汇编指令:MOV AX,BX 这样的写法与人类语言接近,便于阅读和记忆。 寄存器:简单的讲是CPU中可以存储数据的器件,一个CPU中有多个寄存器。 AX是其中一个寄存器的代号, BX是另一个寄存器的代号。 更详细的内容我们在以后的课程中将会讲到。 计算机能读懂的只有机器指令,那么如何让计算机执行程序员用汇编指令编写的程序呢? [caption id="attachment_220" align="aligncenter" width="300"]![汇编语言原理](http://blog.fishc.com/wp-content/uploads/2012/07/24-300x101.gif)