Soluciones para docentes

Bits y representación

Recoge cuatro tipos de evidencia: predicción del estado relevante; comportamiento en casos variados, incluidos los límites; explicación apoyada en la traza y el estado; y corrección razonada de una discrepancia. Valora cada aspecto como inicial, con apoyo o autónomo, en papel o mediante el proceso aprobado del centro. Superar un reto demuestra un comportamiento de la máquina, no la autoría ni un dominio completo. Acepta programas correctos equivalentes; las soluciones públicas son modelos, no las únicas respuestas posibles.

Material didáctico público. Las soluciones son ejemplos; otros programas correctos equivalentes pueden superar las comprobaciones.

22. Máscaras de bits e indicadores

Selecciona bits con AND y actívalos con OR.

Abrir esta lección →

1. Predecir y trazar

Antes de ejecutar el programa de prueba, predice su salida y traza las tres primeras instrucciones ejecutadas. Sigue los registros, indicadores o memoria relevantes. Después avanza paso a paso para comparar.

LOAD 13
AND 5
PRINT
OR 2
PRINT
HALT

Añadir entradas a la cola: Ninguno

Inicializar memoria: Todos los bytes empiezan en cero

Solución de la predicción

Salida: 5, 7

InstrucciónPC antesPC despuésR0 antesR0 despuésEstado relevanteSalida
LOAD01013{"registers":[13,0,0,0,0,0,0,0],"flags":{"zero":false,"negative":false,"overflow":false},"sp":255,"stack":[],"callStack":[],"loopStack":[],"memoryReads":[],"memoryWrites":[]}Ninguno
AND12135{"registers":[5,0,0,0,0,0,0,0],"flags":{"zero":false,"negative":false,"overflow":false},"sp":255,"stack":[],"callStack":[],"loopStack":[],"memoryReads":[],"memoryWrites":[]}Ninguno
PRINT2355{"registers":[5,0,0,0,0,0,0,0],"flags":{"zero":false,"negative":false,"overflow":false},"sp":255,"stack":[],"callStack":[],"loopStack":[],"memoryReads":[],"memoryWrites":[]}5

2. Construir y comprobar

Lee un byte entre 0 y 255. Imprime únicamente sus bits 0 y 2 como una máscara numérica, usando AND 5.

Tipos de instrucción requeridos: INPUT, AND

Ejemplo de solución del reto

INPUT
AND 5
PRINT
HALT

Casos reales del comprobador

Caso 1
Entrada
7
Memoria inicial
Todos los bytes empiezan en cero
Salida esperada
5
Caso 2
Entrada
10
Memoria inicial
Todos los bytes empiezan en cero
Salida esperada
0
Caso 3
Entrada
20
Memoria inicial
Todos los bytes empiezan en cero
Salida esperada
4
Caso 4
Entrada
255
Memoria inicial
Todos los bytes empiezan en cero
Salida esperada
5

3. Explicar la máquina

¿Qué selecciona la máscara 5?

Razonamiento y nota docente

00000101 selecciona los bits 0 y 2 y borra los demás. No es una resta numérica.