cpu.cpp

来自「mini mips 小型mips软件」· C++ 代码 · 共 41 行

CPP
41
字号
#include "StdAfx.h"
#include "CPU.h"
#include <iostream>

CPU::CPU(void)
{
	Clear();
}

void CPU::AddAsmCode(vector<string> asmCode){
	instrument.SetAsmCode(asmCode);
	instrument.TranslateAsmToBinary();
	Data.Mem.Save(cur, instrument.GetCodeRegister());
	cur += 4;
}

void CPU::AddBinaryCode(string binaryCode){
	instrument.SetBinaryCode(binaryCode);
	instrument.TranslateBinaryToAsm();
	Data.Mem.Save(cur, instrument.GetCodeRegister());
	cur += 4;
}

void CPU::AddCode(unsigned Code, unsigned address){
	static RegisterType rt;
	rt.UIntV = Code;
	Data.Mem.Save(address, rt);
	if (cur < address) cur = address;
}

void CPU::Clear(){
	Data.Clear();
	cur = 0x00400000;
	Data.exit = false;
	Data.exit2 = false; 
}

bool CPU::RunCurrentSentence(){
	instrument.Run(Data);
	return Data.PC.GetPC() <= cur && !Data.exit && !Data.exit2;
}

⌨️ 快捷键说明

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