当执行单元(Execution Unit,EU)执行跳转、
子程序调用或返回指令时,BIU就使指令队列复位,并从指令给出的新地址开始取指令,新取的第1条指令直接经指令队列送
EU执行,随后取来的指令将填入指令队列缓冲器。
8086的指令队列有6个字节,8088的指令队列有4个字节。对8086而言,当指令队列出现2个空字节,对8088而言,指令队列出现1个空字节时,BIU就自动执行一次取
指令周期,将下一条要执行的指令从
内存单元读入指令队列。它们采用“
先进先出”原则,按顺序存放,并按顺序取到EU中去执行。
当EU执行一条需要到
存储器或
I/O端口读取
操作数的指令时,BIU将在执行完现行取指令的存储器周期后的下一个
存储周期,对指令所指定的
存储单元或
I/O端口进行访问,读取的操作数经BIU送EU进行处理。当EU执行跳转、
子程序调用或返回指令时,BIU就使指令队列复位,并从指令给出的新地址开始取指令,新取的第1条指令直接经指令队列送EU执行,随后取来的指令将填入指令队列缓冲器。