Dictionnaire
This commit is contained in:
parent
59126cf65f
commit
c05b92a03b
142
assembleur.py
Normal file
142
assembleur.py
Normal file
@ -0,0 +1,142 @@
|
|||||||
|
|
||||||
|
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)
|
||||||
Loading…
x
Reference in New Issue
Block a user