142 lines
2.8 KiB
Python
142 lines
2.8 KiB
Python
|
|
instructions = {
|
|
"DB" : {
|
|
"args": [{
|
|
"isRegister": False,
|
|
"isValue": True,
|
|
"isLabel": False
|
|
}]
|
|
},
|
|
"CALL": {
|
|
"args": [{
|
|
"isRegister": False,
|
|
"isValue": False,
|
|
"isLabel": True
|
|
}]
|
|
},
|
|
"RET": {
|
|
"args": []
|
|
},
|
|
"JMP": {
|
|
"args": [{
|
|
"isRegister": False,
|
|
"isValue": False,
|
|
"isLabel": True
|
|
}]
|
|
},
|
|
"JLT": {
|
|
"args": [{
|
|
"isRegister": False,
|
|
"isValue": False,
|
|
"isLabel": True
|
|
}]
|
|
},
|
|
"JEQ": {
|
|
"args": [{
|
|
"isRegister": False,
|
|
"isValue": False,
|
|
"isLabel": True
|
|
}]
|
|
},
|
|
"PUSH": {
|
|
"args": [{
|
|
"isRegister": True,
|
|
"isValue": False,
|
|
"isLabel": False
|
|
}]
|
|
},
|
|
"POP": {
|
|
"args": [{
|
|
"isRegister": True,
|
|
"isValue": False,
|
|
"isLabel": False
|
|
}]
|
|
},
|
|
"MOV": {
|
|
"args": [{
|
|
"isRegister": True,
|
|
"isValue": False,
|
|
"isLabel": False
|
|
},
|
|
{
|
|
"isRegister": True,
|
|
"isValue": True,
|
|
"isLabel": False
|
|
}]
|
|
},
|
|
"SUB": {
|
|
"args": [{
|
|
"isRegister": True,
|
|
"isValue": False,
|
|
"isLabel": False
|
|
},
|
|
{
|
|
"isRegister": True,
|
|
"isValue": True,
|
|
"isLabel": False
|
|
}]
|
|
},
|
|
"CMP": {
|
|
"args": [{
|
|
"isRegister": True,
|
|
"isValue": False,
|
|
"isLabel": False
|
|
},
|
|
{
|
|
"isRegister": True,
|
|
"isValue": True,
|
|
"isLabel": False
|
|
}]
|
|
},
|
|
"LDR": {
|
|
"args": [{
|
|
"isRegister": True,
|
|
"isValue": False,
|
|
"isLabel": False
|
|
},
|
|
{
|
|
"isRegister": True,
|
|
"isValue": False,
|
|
"isLabel": False
|
|
},
|
|
{
|
|
"isRegister": False,
|
|
"isValue": False,
|
|
"isLabel": True
|
|
}]
|
|
},
|
|
"STR": {
|
|
"args": [{
|
|
"isRegister": True,
|
|
"isValue": False,
|
|
"isLabel": False
|
|
},
|
|
{
|
|
"isRegister": True,
|
|
"isValue": False,
|
|
"isLabel": False
|
|
},
|
|
{
|
|
"isRegister": False,
|
|
"isValue": False,
|
|
"isLabel": True
|
|
}]
|
|
},
|
|
"OUT": {
|
|
"args": [{
|
|
"isRegister": True,
|
|
"isValue": False,
|
|
"isLabel": False
|
|
}]
|
|
},
|
|
"TIM": {
|
|
"args": [{
|
|
"isRegister": False,
|
|
"isValue": True,
|
|
"isLabel": False
|
|
}]
|
|
}
|
|
}
|
|
|
|
|
|
print(instructions) |