Olá tudo bem? Bom estou em busca de criar uma maquina virtual bem “simples” porem estou com uma duvida no montador. Por exemplo o código:
mov R0 10
mov R1 20
add R0 R1
push R0
Vai ser traduzido para:
0001 0000 0000 1010 # mov R0 10
0001 0001 0001 0100 # mov R1 20
0002 0000 0000 0001 # add R0 R1
0004 0000 0000 0000 # push R0
Porem não sei como representar label e como separar esses valores, como posso fazer isso?
A instrução, por exemplo: 0001000000001010
como posso dividir em
0001 opcode
0000 valor1
0000 valor2 (registrador/numero)
1010 valor3 (numero)