⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 microprodlg.cpp

📁 模拟了tec2000的所有功能
💻 CPP
📖 第 1 页 / 共 5 页
字号:
}

void CMicroProDlg::OnDropdownCombo114() 
{
	m_ctrlMicroShow.Clear();
	CString temp;
	temp="000:4个标志位的值保持不便";
	temp+="\r\n";
	temp+="001:接收ALU的标志位输出的值";
	temp+="\r\n";
	temp+="010:恢复标志位原现场值";
	temp+="\r\n";
	temp+="011:C置0,另3个标志不变";
	temp+="\r\n";
	temp+="100:C置1,另3个标志不变";
	temp+="\r\n";
	temp+="101:右移操作,另3个标志不变";
	temp+="\r\n";
	temp+="110:左移操作,另3个标志不变";
	temp+="\r\n";
	temp+="111:联合右移,另3个标志不变";
	m_ctrlMicroShow.SetWindowText(temp);	
}

void CMicroProDlg::OnDropdownCombo115() 
{
	m_ctrlMicroShow.Clear();
	CString temp;
	temp="00:通用寄存器逻辑移位";
	temp+="\r\n";
	temp+="01:通用寄存器与C循环移位";
	temp+="\r\n";
	temp+="10:原码除(左移)乘(右移)或联合左移";
	temp+="\r\n";
	temp+="11:通用寄存器与Q联合移位(右移)";
	m_ctrlMicroShow.SetWindowText(temp);
}

void CMicroProDlg::OnDropdownCombo116() 
{
	m_ctrlMicroShow.Clear();
	CString temp;
	temp="00:Cin=0";
	temp+="\r\n";
	temp+="01:Cin=1";
	temp+="\r\n";
	temp+="10:Cin=C";
	temp+="\r\n";
	temp+="11:Cin=C0";
	m_ctrlMicroShow.SetWindowText(temp);	
}

void CMicroProDlg::OnDropdownCombo117() 
{
	m_ctrlMicroShow.Clear();
	CString temp;
	temp="0000:无操作";
	temp+="\r\n";
	temp+="0001:指令寄存器接收";
	temp+="\r\n";
	temp+="0010:地址寄存器低8位接收";
	temp+="\r\n";
	temp+="0011:地址寄存器高8位接收";
	temp+="\r\n";
	temp+="0100:恢复中断优先级";
	temp+="\r\n";
	temp+="0101:新中断优先级";
	temp+="\r\n";
	temp+="0110:开中断,置中断允许位INTE=1";
	temp+="\r\n";
	temp+="0111:关中断,置中断允许位INTE=0";
	m_ctrlMicroShow.SetWindowText(temp);	
}

void CMicroProDlg::OnDropdownCombo118() 
{
	m_ctrlMicroShow.Clear();
	CString temp;
	temp="0000:开关到内部总线";
	temp+="\r\n";
	temp+="0001:ALU输出到内部总线";
	temp+="\r\n";
	temp+="0010:16值机扩展符导到内部总线";
	temp+="\r\n";
	temp+="0011:状态到内部总线";
	temp+="\r\n";
	temp+="0100:8位机扩展符号导到内部总线";
	temp+="\r\n";
	temp+="0101:中断向量高位到内部总线";
	temp+="\r\n";
	temp+="0110:中断向量低位到内部总线";
	temp+="\r\n";
	temp+="0111:无操作";
	m_ctrlMicroShow.SetWindowText(temp);
}

void CMicroProDlg::OnDropdownCombo14() 
{
	m_ctrlMicroShow.Clear();
	CString temp;
	temp+="0000:复位";
	temp+="\r\n";
    temp+="0001:条件转PL子程序";
	temp+="\r\n";
    temp+="0010:跳转MAP";
	temp+="\r\n";
    temp+="0011:条件跳转PL";
	temp+="\r\n";
    temp+="0100:压入/条件装入计数器";
	temp+="\r\n";
    temp+="0101:条件转P/PL子程序";
	temp+="\r\n";
    temp+="0110:条件跳转向量";
	temp+="\r\n";
    temp+="0111:条件跳转P/PL";
	temp+="\r\n";
    temp+="1000:R!=0,重复本条指令";
	temp+="\r\n";
    temp+="1001:R!=0,重复本条指令";
	temp+="\r\n";
    temp+="1010:条件返回";
	temp+="\r\n";
    temp+="1011:条件跳转PL和弹出";
	temp+="\r\n";
    temp+="1100:装入计数器和连续";
	temp+="\r\n";
	temp+="1101:测试循环结束";
	temp+="\r\n";
	temp+="1110:连续";
	temp+="\r\n";
	temp+="1111:R!=0,重复本条指令三路分支";
	m_ctrlMicroShow.SetWindowText(temp);
	
	
}

void CMicroProDlg::OnDropdownCombo15() 
{
	m_ctrlMicroShow.Clear();
	CString temp;
	temp="0000:必转";
	temp+="\r\n";
	temp+="0010:/INT=0时,转";
	temp+="\r\n";
	temp+="0100:RC JRNC JRZ JRNZ条件不成立时,转";
	temp+="\r\n";
	temp+="0101:JRS、JRNS条件不成立时,转";
	temp+="\r\n";
	temp+="0110:IRH2=0时,转";
	temp+="\r\n";
	temp+="0111:IRHO=1时,转";
	m_ctrlMicroShow.SetWindowText(temp);	
}

void CMicroProDlg::OnDropdownCombo16() 
{
	m_ctrlMicroShow.Clear();
	CString temp;
	temp="0000:内存写信号,低电平有效";
	temp+="\r\n";
	temp+="0001:内存读信号,低电平有效";
	temp+="\r\n";
	temp+="0010:I/O写信号,低电平有效";
	temp+="\r\n";
	temp+="0011:I/O读信号,低电平有效";
	temp+="\r\n";
	temp+="0100:无读写操作";
	temp+="\r\n";
	temp+="0101:无读写操作";
	temp+="\r\n";
	temp+="0110:无读写操作";
	temp+="\r\n";
	temp+="0111:无读写操作";
	m_ctrlMicroShow.SetWindowText(temp);
	
}

void CMicroProDlg::OnDropdownCombo17() 
{
	m_ctrlMicroShow.Clear();
	CString temp;
	temp="000:数据来源A和Q";
	temp+="\r\n";
	temp+="001:数据来源A和B";
	temp+="\r\n";
	temp+="010:数据来源0和Q";
	temp+="\r\n";
	temp+="011:数据来源0和B";
	temp+="\r\n";
	temp+="100:数据来源0和A";
	temp+="\r\n";
	temp+="101:数据来源D和A";
	temp+="\r\n";
	temp+="110:数据来源D和Q";
	temp+="\r\n";
	temp+="111:数据来源D和0";
	m_ctrlMicroShow.SetWindowText(temp);
}

void CMicroProDlg::OnDropdownCombo18() 
{
	m_ctrlMicroShow.Clear();
	CString temp;
	temp="0:A3~A0所指定的A口";
	temp+="\r\n";
    temp+="1:IRL7-IR4所指定的A口";
	m_ctrlMicroShow.SetWindowText(temp);	
}

void CMicroProDlg::OnDropdownCombo19() 
{
	m_ctrlMicroShow.Clear();
	CString temp;
	temp="000:寄存器不存储、Q结果选F、Y输出选择F";
	temp+="\r\n";
	temp+="001:寄存器不存储、Q结果无、Y输出选择F";
	temp+="\r\n";
	temp+="010:寄存器结果F->B、Q结果无、Y输出选择A";
	temp+="\r\n";
	temp+="011:寄存器结果F->B、Q结果无、Y输出选择F";
	temp+="\r\n";
	temp+="100:寄存器结果F/2->B、Q结果Q/2->Q、Y输出选择F";
	temp+="\r\n";
	temp+="101:寄存器结果F/2->B、Q结果无、Y输出选择F";
	temp+="\r\n";
	temp+="110:寄存器结果2*F->B、Q结果2*Q->Q、Y输出选择F";
	temp+="\r\n";
	temp+="111:寄存器结果2*F->B、Q结果无、Y输出选择F";
	m_ctrlMicroShow.SetWindowText(temp);
}

void CMicroProDlg::OnDropdownCombo210() 
{
	m_ctrlMicroShow.Clear();
	CString temp;
	temp="0:B3-B0所指定的B口";
	temp+="\r\n";
	temp+="1:IRL3-IR0所指定的B口";
	m_ctrlMicroShow.SetWindowText(temp);
	
}

void CMicroProDlg::OnDropdownCombo211() 
{
	m_ctrlMicroShow.Clear();
	CString temp;
	temp="000:R+S";
	temp+="\r\n";
	temp+="001:S-R";
	temp+="\r\n";
	temp+="010:R-S";
	temp+="\r\n";
	temp+="011:R∨S";
	temp+="\r\n";
	temp+="100:R∧S";
	temp+="\r\n";
	temp+="101:/R∨S";
	temp+="\r\n";
	temp+="110:R⊕S";
	temp+="\r\n";
	temp+="111:/(R⊕S)";
	m_ctrlMicroShow.SetWindowText(temp);
	
}

void CMicroProDlg::OnDropdownCombo212() 
{
	m_ctrlMicroShow.Clear();
	CString temp;
	temp="0000:选择B口处的寄存器为R0";
	temp+="\r\n";
	temp+="0001:选择B口处的寄存器为R1";
	temp+="\r\n";
	temp+="0010:选择B口处的寄存器为R2";
	temp+="\r\n";
	temp+="0011:选择B口处的寄存器为R3";
	temp+="\r\n";
	temp+="0110:选择B口处的寄存器为R6";
	temp+="\r\n";
	temp+="0111:选择B口处的寄存器为R7";
	temp+="\r\n";
	temp+="1000:选择B口处的寄存器为R8";
	temp+="\r\n";
	temp+="1001:选择B口处的寄存器为R9";
	temp+="\r\n";
	temp+="1010:选择B口处的寄存器为R10";
	temp+="\r\n";
	temp+="1011:选择B口处的寄存器为R11";
	temp+="\r\n";
	temp+="1100:选择B口处的寄存器为R12";
	temp+="\r\n";
	temp+="1101:选择B口处的寄存器为R13";
	temp+="\r\n";
	temp+="1110:选择B口处的寄存器为R14";
	temp+="\r\n";
	temp+="1111:选择B口处的寄存器为R15";
	m_ctrlMicroShow.SetWindowText(temp);	
	
}

void CMicroProDlg::OnDropdownCombo213() 
{
	m_ctrlMicroShow.Clear();
	CString temp;
	temp="0000:选择A口处的寄存器为R0";
	temp+="\r\n";
	temp+="0001:选择A口处的寄存器为R1";
	temp+="\r\n";
	temp+="0010:选择A口处的寄存器为R2";
	temp+="\r\n";
	temp+="0011:选择A口处的寄存器为R3";
	temp+="\r\n";
	temp+="0110:选择A口处的寄存器为R6";
	temp+="\r\n";
	temp+="0111:选择A口处的寄存器为R7";
	temp+="\r\n";
	temp+="1000:选择A口处的寄存器为R8";
	temp+="\r\n";
	temp+="1001:选择A口处的寄存器为R9";
	temp+="\r\n";
	temp+="1010:选择A口处的寄存器为R10";
	temp+="\r\n";
	temp+="1011:选择A口处的寄存器为R11";
	temp+="\r\n";
	temp+="1100:选择A口处的寄存器为R12";
	temp+="\r\n";
	temp+="1101:选择A口处的寄存器为R13";
	temp+="\r\n";
	temp+="1110:选择B口处的寄存器为R14";
	temp+="\r\n";
	temp+="1111:选择B口处的寄存器为R15";
	m_ctrlMicroShow.SetWindowText(temp);
	
}

void CMicroProDlg::OnDropdownCombo214() 
{
	m_ctrlMicroShow.Clear();
	CString temp;
	temp="000:4个标志位的值保持不便";
	temp+="\r\n";
	temp+="001:接收ALU的标志位输出的值";
	temp+="\r\n";
	temp+="010:恢复标志位原现场值";
	temp+="\r\n";
	temp+="011:C置0,另3个标志不变";
	temp+="\r\n";
	temp+="100:C置1,另3个标志不变";
	temp+="\r\n";
	temp+="101:右移操作,另3个标志不变";
	temp+="\r\n";
	temp+="110:左移操作,另3个标志不变";
	temp+="\r\n";
	temp+="111:联合右移,另3个标志不变";
	m_ctrlMicroShow.SetWindowText(temp);
	
}

void CMicroProDlg::OnDropdownCombo215() 
{
	m_ctrlMicroShow.Clear();
	CString temp;
	temp="00:通用寄存器逻辑移位";
	temp+="\r\n";
	temp+="01:通用寄存器与C循环移位";
	temp+="\r\n";
	temp+="10:原码除(左移)乘(右移)或联合左移";
	temp+="\r\n";
	temp+="11:通用寄存器与Q联合移位(右移)";
	m_ctrlMicroShow.SetWindowText(temp);
	
}

void CMicroProDlg::OnDropdownCombo216() 
{
	m_ctrlMicroShow.Clear();
	CString temp;
	temp="00:Cin=0";
	temp+="\r\n";
	temp+="01:Cin=1";
	temp+="\r\n";
	temp+="10:Cin=C";
	temp+="\r\n";
	temp+="11:Cin=C0";
	m_ctrlMicroShow.SetWindowText(temp);
	
}

void CMicroProDlg::OnDropdownCombo217() 
{
	m_ctrlMicroShow.Clear();
	CString temp;
	temp="0000:无操作";
	temp+="\r\n";
	temp+="0001:指令寄存器接收";
	temp+="\r\n";
	temp+="0010:地址寄存器低8位接收";
	temp+="\r\n";
	temp+="0011:地址寄存器高8位接收";
	temp+="\r\n";
	temp+="0100:恢复中断优先级";
	temp+="\r\n";
	temp+="0101:新中断优先级";
	temp+="\r\n";
	temp+="0110:开中断,置中断允许位INTE=1";
	temp+="\r\n";
	temp+="0111:关中断,置中断允许位INTE=0";
	m_ctrlMicroShow.SetWindowText(temp);	
	
}

void CMicroProDlg::OnDropdownCombo218() 
{
	m_ctrlMicroShow.Clear();
	CString temp;
	temp="0000:开关到内部总线";
	temp+="\r\n";
	temp+="0001:ALU输出到内部总线";
	temp+="\r\n";
	temp+="0010:16值机扩展符导到内部总线";
	temp+="\r\n";
	temp+="0011:状态到内部总线";
	temp+="\r\n";
	temp+="0100:8位机扩展符号导到内部总线";
	temp+="\r\n";
	temp+="0101:中断向量高位到内部总线";
	temp+="\r\n";
	temp+="0110:中断向量低位到内部总线";
	temp+="\r\n";
	temp+="0111:无操作";
	m_ctrlMicroShow.SetWindowText(temp);
	
}

void CMicroProDlg::OnDropdownCombo24() 
{
	m_ctrlMicroShow.Clear();
	CString temp;
	temp+="0000:复位";
	temp+="\r\n";
    temp+="0001:条件转PL子程序";
	temp+="\r\n";
    temp+="0010:跳转MAP";
	temp+="\r\n";
    temp+="0011:条件跳转PL";
	temp+="\r\n";
    temp+="0100:压入/条件装入计数器";
	temp+="\r\n";
    temp+="0101:条件转P/PL子程序";
	temp+="\r\n";
    temp+="0110:条件跳转向量";
	temp+="\r\n";
    temp+="0111:条件跳转P/PL";
	temp+="\r\n";
    temp+="1000:R!=0,重复本条指令";
	temp+="\r\n";
    temp+="1001:R!=0,重复本条指令";
	temp+="\r\n";
    temp+="1010:条件返回";
	temp+="\r\n";
    temp+="1011:条件跳转PL和弹出";
	temp+="\r\n";
    temp+="1100:装入计数器和连续";
	temp+="\r\n";
	temp+="1101:测试循环结束";
	temp+="\r\n";
	temp+="1110:连续";
	temp+="\r\n";
	temp+="1111:R!=0,重复本条指令三路分支";
	m_ctrlMicroShow.SetWindowText(temp);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -