汇编语言高效的原因:构成汇编语言主体的汇编格式是机器指令的符号表示,每一条汇编格式指令都是所有对应的某条机器指令“化身”;另一个重要的原因是汇编语言程序能够充分利用及其硬件系统的许多特性
使用汇编语言的场合:
(1) 对软件的执行时间或存储容量有较高要求的场合,例如系统的关键核心,智能化仪表的控制,实时控制系统等
(2) 需要提高大型软件性能的场合,通常把大型软件中执行频率较高的子程序用汇编语言编写,然后把它们与程序一起链接
(3) 软件与硬件关系密切,软件要有直接和有效控制硬件的场合,如设备驱动程序等
(4) 没有合适的高级语言的场合
Intel8086内部分为2部分:总线接口部件BIU和执行部件EU,总线接口包括一组段寄存器,一个指令指示器,指令队列长6字节,地址产生器和数据控制器等,BIU根据执行部件EU的请求,完成CPU与存储器I/O设备之间的数据传送,在EU执行指令的过程中,BIU根据需要从存储器中预先取出一些指令,保存到指令队列中,如果EU执行一条转移指令,使程序发生转移,那么存放在指令队列中预先取得的指令就不再有用,BIU会根据EU的指示从新的地址开始取指令
执行部件EU包括一个算数逻辑单元(ALU),一组通用寄存器和标志寄存器等,他们均是16位的,EU负责指令的执行,并进行算术逻辑运算等,EU从BIU中的指令队列中取得指令,当指令要求将数据存放到存储器或输出到外部设备,或者要从存储器或外部设备读取数据时,EU就像BIU发出请求,BIU根据EU发来的请求完成这些操作,BIU,EU是并行工作的
80386简介:主要组成部分包含BIU,它为80386和它的环境提供接口,它接收来自执行部件或代码预取部件的存储传递请求,并按优先级选择这些请求,同时它产生或完成当前总线周期的信号,这些信号包括访问存储器和I/O的地址,数据和控制输出。代码预取部件执行预取代码功能,当BIU不占用总线周期来执行一条指令时,它指示BIU顺着指令字节流顺序提取代码,这些被预取的指令存放在16字节的鱼去代码队列中,等待指令译码部件的处理,指令译码部件从预取代码队列中取出指令并将它们转换成微代码,被译码的指令按FIFO方式存放在三个代码的指令队列中,等待执行部件的处理,执行不见执行指令队列中的指令,并与完成该指令要求的所有其他部件实现通信,他含有八个用于地址计算和数据操作的通用寄存器,还有一个64位桶式位移器,用于加速位移,循环,乘法和除法操作,分段部件和分页部件构成存储器管理部件MMU,分段部件把逻辑地址(虚拟地址)转换线性地址,并有效的实现多种存储器保护措施,分页部件把线性地址转换成物理地址,并更有效的支持虚拟存储器的实现,分页时可选的,当不起用分页部件时,线性地址就直接作为物理地址
浙公网安备 33010602011771号