floatingregister.cpp

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

CPP
39
字号
#include "StdAfx.h"
#include "FloatingRegister.h"

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

void FloatingRegister::Clear(){
	for (int i = 0; i < 16; ++i) RegisterTable.DoubleFloat[i] = 0;
}

void FloatingRegister::SetValueF(int ID, float value){
	if (ID < 0 || ID >= 32){
		throw RegistersErrorException("Wrong ID");
	}
	RegisterTable.SingleFloat[ID] = value;
}

void FloatingRegister::SetValueD(int ID, double value){
	if (ID < 0 || ID >= 32 || ID % 2 == 1){
		throw RegistersErrorException("Wrong ID");
	}
	RegisterTable.DoubleFloat[ID / 2] = value;
}

float FloatingRegister::GetValueF(int ID){
	if (ID < 0 || ID >= 32){
		throw RegistersErrorException("Wrong ID");
	}
	return RegisterTable.SingleFloat[ID];
}

double FloatingRegister::GetValueD(int ID){
	if (ID < 0 || ID >= 32 || ID % 2 == 1){
		throw RegistersErrorException("Wrong ID");
	}
	return RegisterTable.DoubleFloat[ID / 2];
}

⌨️ 快捷键说明

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