Outils pour utilisateurs

Outils du site


back2root:programmation:virtual-cpu-v1

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
programmation:virtual-cpu-v1 [2021/05/16 02:27] – créée fraterback2root:programmation:virtual-cpu-v1 [2022/09/05 00:26] (Version actuelle) – [Instruction Opcode] frater
Ligne 16: Ligne 16:
 ===== Structure d'une instruction ===== ===== Structure d'une instruction =====
  
-les deux premiers octets sont obligatoirement une instruction.+les deux premiers octets (16 bits) sont obligatoirement une instruction. 
 +l'instruction se décode en 4x 4 bits. 
 + 
 +de gauche à droite: 
 + 
 +  * 4 bits d'instruction ID 
 +  * 4 bits pour le 1er paramètre (si nécessaire) 
 +  * 4 bits pour le 2ème paramètre (si nécessaire)  
 +  * 4 bits pour la longueur (si nécéssaire) de l'instruction
  
 <code> <code>
 0x0000 0x0000
   ||||   ||||
-  |||+---> Longueur   +  |||+---> Longueur (nombre de byte(s) a lire en plus de l'instruction) 
-  |||        0 : none+  |||        0 : aucun, l'instruction est complete
   |||        1 : 1 byte   |||        1 : 1 byte
   |||        2 : 2 bytes   |||        2 : 2 bytes
Ligne 50: Ligne 58:
 ce qui veut dire que l'on peut avoir : ce qui veut dire que l'on peut avoir :
  
-^ Valeur du Registre ^ Valeur Pointée +|                    ||                      | 
-| 0 D0 | 8 [A0] | +^ Valeur  ^ lue dans  ^ Valeur  ^ pointée par  
-| 1 D1 | 9 [A1] | +| 0       | D0        | 8       | [A0]         
-| 2 D2 | A [A2] | +| 1       | D1        | 9       | [A1]         
-| 3 D3 | B [A3] | +| 2       | D2        | A       | [A2]         
-| 4 A0 | | +| 3       | D3        | B       | [A3]         
-| 5 A1 | | +| 4       | A0                              || 
-| 6 A2 | | +| 5       | A1        :::                   | :::          
-| 7 A3 | |+| 6       | A2        :::                   | :::          
 +| 7       | A3        :::                   | :::          |
  
 ===== Instruction Opcode ===== ===== Instruction Opcode =====
 +
 +"most significant bits", càd les 4bits de gauche
  
 <code> <code>
Ligne 86: Ligne 97:
 0x0003 : CLEAR (Clear flag register) 0x0003 : CLEAR (Clear flag register)
 </code> </code>
 +
 +<nspages back2root/programmation -simpleList -h1 -exclude:start -textPages="Back2Root">
back2root/programmation/virtual-cpu-v1.1621124858.txt.gz · Dernière modification : 2021/05/16 02:27 de frater