摘要:
王爽汇编第十六章,直接定址表 直接定址表 程序中,code、a、b、start、s都是标号。这些标号仅仅表示了内存单元的地址 assume cs:code code segment a : db 1,2,3,4,5,6,7,8 ;在后面加有“:”的地址标号,只能在代码段中使用,不能在其他段中使用。 阅读全文
摘要:
王爽汇编第十五章,外中断 外中断概述 CPU在计算机系统中,除了能够执行指令,进行运算以外,还应该能够对外部设备进行控制,接收它们的输入,向它们进行输出(I/O能力) PC系统的接口卡和主板上,装有各种接口芯片。这些外设接口芯片的内部有若干寄存器,CPU将这些寄存器当作端口来访问 CPU通过端口和外 阅读全文
摘要:
王爽汇编第十四章,端口 端口概述 在PC机系统中,和CPU通过总线相连的芯片除各种存储器外,还有以下3种芯片。 各种接口卡(比如,网卡、显卡)上的接口芯片,它们控制接口卡进行工作; 主板上的接口芯片,CPU通过它们对部分外设进行访问; 其他芯片,用来存储相关的系统信息,或进行相关的输入输出处理。 在 阅读全文
摘要:
王爽汇编第十二章,内中断 内中断概述 任何一个通用的CPU,比如8086,都具备一种能力,可以在执行完当前正在执行的指令之后,检测到从CPU外部发送过来的或内部产生的一种特殊信息,并且可以对立即所接收到的信息进行处理。这种特殊的信息,我们称其为:中断信息。 中断意思:CPU不再接着(刚执行完的指令) 阅读全文
摘要:
王爽汇编第十一章,标志寄存器 标志寄存器概述 CPU内部的寄存器中,有一种特殊的寄存器(对于不同的处理机,个数和结构都可能不同)具有以下3种作用。 用来存储相关指令的某些执行结果; 用来为CPU执行相关指令提供行为依据; 用来控制CPU的相关工作方式。 这种特殊的寄存器在8086CPU中,被称为标志 阅读全文
摘要:
王爽汇编第十章,call和ret指令 call和ret指令概述: call和ret指令都是转移指令,它们都修改IP,或同时修改CS和IP。他们经常被用来实现子程序(函数)的设计。 ret和retf ret指令 ret指令:用栈中的数据,修改IP的内容,从而实现(近转移); CPU执行ret指令时,需 阅读全文
摘要:
王爽汇编第九章,转移指令的原理 转移指令 可以修改IP,或同时可以修改CS和IP的指令统称为:转移指令 8086CPU的转移行为有以下几类: 只修改IP时,称为段内转移,比如:jmp ax。 同时修改CS和IP时,称为段间转移,比如:jmp 1000:0。 由于转移指令对IP的修改范围不同,段内转移 阅读全文
摘要:
王爽汇编第八章,数据处理的两个基本问题 本章对前面的所有内容是具有总结性的。我们知道,计算机是进行数据处理、运算的机器,那么有两个基本的问题就包含在其中: (1) 处理的数据在什么地方? (2)要处理的数据有多长? 这两个问题,在机器指令中必须给以明确或隐含的说明,否则计算机就无法工作。 bx、si 阅读全文
摘要:
王爽汇编第七章,更灵活的定位内存地址的方法 and 和 or指令 关于ASCII码 ASCII(发音: /ˈæski/ ASS-kee[1],American Standard Code for Information Interchange,美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统。 阅读全文
摘要:
王爽汇编第六章,包含多个段的程序 多个段 我们之前所有的程序里,都只有一个代码段。那么现在问题来了,我们程序如果需要用到其他空间来存放数据怎么办呢? 比如: 在一个段中存放数据、代码、栈。 将数据、代码、栈放入不同的段中。 在代码段中使用数据 考虑这样一个问题,编程计算以下8个数据的和,结果存在ax 阅读全文