Tabla de símbolos y tabla de reubicación en archivo de objeto

Por lo que entiendo, las instrucciones y los datos en un archivo de objeto tienen direcciones. El primer elemento de datos comienza en la dirección 0 y la primera instrucción también comienza en la dirección 0.

La tabla de reubicación contiene información sobre las instrucciones que deben actualizarse si las direcciones en el archivo cambian, por ejemplo, si el archivo está vinculado entre sí. La línea A, en el ejemplo a continuación, estaría en la tabla de reubicación. No creo que B esté en la tabla de reubicación, ya que la dirección de la etiqueta "igual" es relativa a B. ¿Son estas suposiciones correctas?

Sé que la tabla de símbolos muestra las etiquetas que tiene el archivo y también las etiquetas que no se han resuelto. Pero, ¿qué otra información contiene la tabla de símbolos?

Además, cuando el ensamblador traduce las instrucciones a binario, ¿qué se coloca en aquellas instrucciones que tienen referencias sin resolver? B en este ejemplo.

.data
TEXT: .asciiz "Foo"

.text
.global main
main:
     li t0, 1
     beq t0, 1, equal #B

equal:
    la a0, TEXT
    jal printf #A

Respuestas a la pregunta(1)

Su respuesta a la pregunta