Depende totalmente de la arquitectura. El video que viste fue probablemente solo para fines educativos y podría no permitir saltar a las direcciones > 15.
En un procesador típico, lo que sucede es que hay varios códigos de operación de salto. Un código de operación de salto puede permitir saltar hacia adelante o hacia atrás solo un cierto rango. En su ejemplo, el rango de salto se codificaría en el campo de datos de 4 bits. Este es un direccionamiento relativo, y el destino del salto es relativo al contador del programa actual.
Se usaría otro código de operación para una dirección de salto absoluta. En este caso, los cuatro bits de datos contendrían la dirección absoluta a la que saltar. Esto solo permitiría saltar dentro de un rango de direcciones de 16 bytes.
Opcode [3: 0] dirección [3: 0]
Si su rango de direcciones es mayor, entonces el Byte que sigue al Opcode / data Byte se usa para codificar direcciones de destino de salto absoluto adicionales dentro de un rango de direcciones de 12 bits, como por ejemplo:
Opcode [3: 0] dirección [11: 8]
dirección [7: 0]
Tal esquema de codificación de dos bytes requerirá dos ciclos para ejecutarse en comparación con el ciclo para el salto relativo mencionado anteriormente.
Un tercer método sería el registro directo de direcciones. En este caso, la dirección de destino del salto se almacena en un registro ALU. El código de operación de salto luego especifica qué registro contiene la dirección de destino.
Opcode [3: 0] registerID [3: 0]
Hay otras formas de ampliar el rango de saltos, estas son las más comunes. Nuevamente, creo que el video que vio fue solo para fines educativos y no describe una arquitectura de microprocesador práctica, ya que el campo del código de operación suele ser mucho mayor que 4 bits para obtener un conjunto de instrucciones más útil y diverso.