Skip to content

03.TheCodeWindow

nonodev96 edited this page Mar 27, 2022 · 5 revisions

La ventana de código

En esta sección se muestra como se almacena el código a ejecutar que se encuentra en la memoria, esto nos permite visualizar las instrucciones, los registros y los datos que se insertan en la memoria.

En esta ventana se nos muestra la dirección de memoria en formato hexadecimal, el texto que representa al label junto al desplazamiento, así como el binario de su representación, el formato hexadecimal, el stage que se encuentra y la instrucción en sí.

Ventana de código

Además nos permite una representación sencilla de como se está ejecutando en el cauce (pipeline).

Al realizar una simulación, está ventana nos muestra un color representativo de la etapa en la que se encuentra cada instrucción en el pipeline.

Ventana de código en ejecución

Desarrollo

{
  "id": "",
  "filename": "prim.s",
  "date": "2021-08-28T10:25:00.000Z",
  "canSimulate": true,
  "lines": 68,
  "machineDirectives": [
    {
      "address": "0x00000000",
      "text": "COUNT",
      "directive": "WORD",
      "hexValue": "0x0000000A"
    }
  ],
  "machineInstructions": [
    {
      "address": "0x00000100",
      "text": "$TEXT",
      "instruction": "ADDI R1, R0, 0x0",
      "code": "0x20010000"
    },
    {
      "address": "0x00000104",
      "text": "MAIN+0x4",
      "instruction": "ADDI R2, R0, 0x2",
      "code": "0x20020002"
    }
  ],
  "runner": [
    {
      "step": 0,
      "line": 0,
      "isNewInstruction": false,
      "pipeline": {
        "IF": {
          "address": "",
          "addressRow": 0,
          "draw": false
        },
        "ID": {
          "address": "",
          "addressRow": 0,
          "draw": false
        },
        "intEX": {
          "address": "",
          "addressRow": 0,
          "draw": false
        },
        "MEM": {
          "address": "",
          "addressRow": 0,
          "draw": false
        },
        "WB": {
          "address": "",
          "addressRow": 0,
          "draw": false
        },
        "faddEX": [],
        "fmultEX": [],
        "fdivEX": [],
        "arrows": []
      },
      "registers": [],
      "memory": [],
      "statistics": {}
    }
  ]
}
Clone this wiki locally