如第二大点的图所示的SP框由2片74LS574锁存器构成16位堆栈指针。在调用中断等突发事件处理中SP指针以间址方式把当前程序指针存入SP-2单元,遇返回指令SP又把栈项所指单元的内容装入程序计数器,然后SP+2退至原始位置。
在手控/在线态,堆栈指针SP由O2~O0 OP及DRCK(CP脉冲)五信号组合控制栈指针的置数操作。本实验以总线上准双向I/O部件的S15~S0为置数源。堆栈指针SP的读出操作由第二张表格所列的源编码表定义。
栈指针打入与读出流程
按下流程通过I/O单元S15~S0开关向SP指针置数,然后关闭SP写使能,完成SP读操作。
1. 将系统状态设置为“手动”、“搭接”
2. 实验连线
连线 信号孔 接入孔 作用1 DRCK CLOCK 单元手动实验状态的时钟来源
2 W K6(M6) 总线字长:0=16位字操作,1=8位字节操作
3 XP K7(M7) 源奇偶位:0=偶寻址,1=奇寻址
4 OP K16(M16) 目的奇偶位:0=偶寻址,1=奇寻址
5 X2 K10(M10) 源部件定义译码端X2
6 X1 K9(M9) 源部件定义译码端X1
3. 程序计数器实验
(1) PC程序计数器的写入
通过“I/O单元”开关向程序计数器PC置数,操作步骤如下:
(2) PC程序计数器的读出
在PC置数操作完成后,按上流程中后两步的要求,关闭PC写使能(K23、K22=11),打开PC输出三态门(K10~K6=00000),数据总线单元应显示的PC指针为0100h。
(3) PC程序计数器加1
在保持PC置数与读出流程的状态下,令K22=0,按【单拍】按钮,在DRCK节拍的下降沿PC计数器加1并送数据总线,PC程序计数器和数据总线单元的显示器应显示0101h。继续按【单拍】按钮,观察PC与数据总线的内容。
4. 地址寄存器实验
在手控/搭接态,数据指针AR由W、LDAR及DRCK(CP脉冲)三信号组合控制地址的置数操作。本实验以总线上准双向I/O部件的S15~S0为置数源。当W=0、LDAR=0时按【单拍】钮,在脉冲下降沿把S15~S0的内容装入地址锁存器AR。操作步骤如下:
5. 堆栈寄存器实验
在手控/搭接态,堆栈指针SP由W、SPW及DRCK(CP脉冲)三信号组合控制栈指针的置数操作。本实验以总线上准双向I/O部件的S15~S0为置数源。当W=0、SPW=0时按单拍按钮,在脉冲下降把S15~S0的内容装入SP。
1)堆栈指针SP打入
拨动“I/O输入输出单元”开关向堆栈指针SP置数,具体操作步骤如下:
2)堆栈指针SP读出
关闭SP写使能,令SPW=1 按下流程完成SP送总线。
专业名称: 软件工程
学生姓名: 小何学长
指导教师: 刘亚松
一、实验题目 程序计数器实验