随笔分类 - Assembly Language
王爽汇编语言
摘要:int9中断例程对键盘输入的处理 键盘输入将引发9号中断,BIOS提供了int9中断例程。CPU在9号中断发生后,执行int 9中断例程,从60h端口读出扫描码,并将其转化为相应的ASCII码或状态信息,存储在内存的指定空间(键盘缓冲区或状态字节)中。 一般的键盘输入,在CPU执行完int 9中断例
阅读全文
摘要:表述了单元长度的标号 在其他段中使用数据标号 直接定址表 1. 自定义(映射)表 自定义(映射)表是一种巧妙的程序设计方法。在程序设计时,我们可以利用各种自定义(映射)表,在两个数据集合之间建立一种映射关系,使得我们可以利用查表的方法,根据给出的数据(输入)得到其在另一个集合中的对应数据(输出)。这
阅读全文
摘要:cpu在计算机系统中,除了能够执行命令,进行运算以外,还应该能够对外部设备进行控制,接收它们的输入,向它们进行输出。也就是说,cpu除了有运算能力外,还要有I/O能力。 接口芯片和端口 在PC系统的接口卡和主板上,装有各种接口芯片。这些外设接口芯片的内部有若干寄存器,cpu将这些寄存器当作端口来访问
阅读全文
摘要:端口 在PC机系统中,和CPU通过总线相连的芯片除了各种存储器外,还有以下3中芯片。 1. 各种接口卡(比如,网卡,显卡)上的接口芯片,它们控制接口卡进行工作; 2. 主板上的接口芯片,CPU通过它们对部分外设进行访问; 3. 其他芯片,用来存储相关的系统信息,或者进行相关的输入输出处理。 这些芯片
阅读全文
摘要:int 指令 int 指令的格式为:int n,n为中断类型码,它的功能是引发终端过程。 CPU执行int n指令,相当于引发一个n号中断的中断过程,执行过程如下。 取中断类型码n; 标志寄存器入栈,IF=0,TF=0; CS,IP入栈; (IP)=(N4),(CS)=(N4+2) 从此转去执行n号
阅读全文
摘要:中断 中断 的意思是指CPU不在接着(刚执行的指令)向下执行,而是转去处理这个特殊信息,而这个特殊的信息我们可以称其为中断信息。 中断信息 是要求CPU马上进行某种处理,并向所要进行的该种处理提供了必备的参数的通知信息。 内中断的产生 对于8086CPU,当CPU内部有下面的情况发生的时候,将产生响
阅读全文
摘要:标志寄存器 8086CPU的标志寄存器有16位,其中存储的信息通常被称为程序状态字(PSW)。flag寄存器是按位起作用的,也就是说,它的每一位都有专门的含义,记录特定的信息。 8086CPU的flag寄存器中的结构如图: ZF 标志 flag的第6位是ZF,零标志位。它记录相关指令执行后,其结果是
阅读全文
摘要:call和ret指令都是转移指令,它们都修改IP,或同时修改CS和IP。它们经常被共同用来实现子程序的设计。 ret 和 retf ret指令用栈中的数据,修改IP的内容,从而实现近转移; retf指令用栈中的数据,修改CS和IP的内容,从而实现远转移; CPU执行ret指令时,进行下面两步操作:
阅读全文
摘要:转移指令 可以修改IP,或同时修改CS和IP的指令统称为转移指令 。概括地讲,转移指令就是可以控制CPU执行内存中某处代码的指令。 8086CPU的转移行为有以下几类。 只修改IP时,称为 段内转移 ,比如:jmp ax 同时修改CS和IP时,称为 段间转移 ,比如:jmp 1000:0。 由于转移
阅读全文
摘要:5.1 [BX]和内存单元的描述 要完成描述一个内存单元,需要两种信息: 内存单元的地址: 可以用 [0] 表示一个内存单元, 0 表示单元的偏移地址,段地址默认在 ds 中; 同样也可以用 [bx] 表示一个内存单元,它的偏移地址在 bx 中; 内存单元的长度(类型): 将一个内存单元的内容送入
阅读全文
摘要:程序的前世今生 4.1 编程 汇编语言程序中,包含两种指令: 汇编指令 :是有对应的机器码的指令,可以被编译为机器指令,最终为 CPU 所执行。 伪指令 :没有对应的机器指令,最终不被 CPU 执行,由编译器来执行,编译器根据伪指令来进行相关的编译工作。 segment 和 ends 是一对成对使用
阅读全文
摘要:3.1 字和数据段 1. 字在内存中存储时,要用两个地址连续的内存单元来存放,字的低位字节存放在低地址单元中,高位字节存放在高地址单元中。 2. 用mov指令访问内存单元,可以在mov指令中只给出单元的偏移地址,此时,段地址默认在DS寄存器中。 3. [address]表示一个偏移地址位addres
阅读全文
摘要:2.1 通用寄存器 AX, BX, CX, DX 这4个寄存器通常用来存放一般性的数据,被称为通用寄存器。8086CPU这5个寄存器都可以分为两个可以独立使用的8位寄存器来用: AX 可分为 AH 和 AL ; BX 可分为 BH 和 BL ; CX 可分为 CH 和 CL ; DX 可分为 DH
阅读全文
摘要:汇编语言 1. 机器语言与机器指令 机器语言 是机器指令的集合。 机器指令 是一台机器可以正确执行的命令。 机器指令 有一串二进制数表示,如010101 汇编语言与汇编指令 汇编语言 的主题是汇编指令。 汇编指令 和机器指令的差别在于指令的表示方法上。 汇编指令 是机器指令便于记忆的书写格式。 汇编
阅读全文
摘要:and和or指令 and 指令:逻辑与指令,按位进行与运算。 例如:and al,11111110B ;将al的第0位设为0。 or 指令:逻辑或指令,按位进行或运算。 例如:or al,00000001B ;将al的第0位设为1。 ASCll码 ASCLL 码就是一种编码方案所谓编码方案,就是一套
阅读全文