La palabra de estado del programa [ a ] ( PSW ) es un registro que cumple la función de registro de estado y contador de programa , y a veces más. El término también se aplica a una copia de la PSW almacenada. Este artículo solo analiza la PSW en el IBM System/360 [ 1 ] y sus sucesores, [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] y sigue la convención de IBM de numerar los bits comenzando con 0 como el bit más a la izquierda (el más significativo).
Si bien ciertos campos dentro del PSW pueden ser probados o configurados mediante instrucciones no privilegiadas, la prueba o configuración de los campos restantes solo puede realizarse mediante instrucciones privilegiadas.
Dentro del PSW se encuentra el código de condición de dos bits , que representa cero, positivo, negativo, desbordamiento y otros indicadores similares de los registros de estado de otras arquitecturas . Las instrucciones de salto condicional prueban este código codificado como un valor de cuatro bits, donde cada bit representa una prueba de uno de los cuatro valores del código de condición: 2 3 + 2 2 + 2 1 + 2 0. (Dado que IBM utiliza numeración de bits big-endian , el valor de máscara 8 selecciona el código 0, el valor de máscara 4 selecciona el código 1, el valor de máscara 2 selecciona el código 2 y el valor de máscara 1 selecciona el código 3).
El PSW de 64 bits describe (entre otras cosas)
- Interrumpir las máscaras
- Estados privilegiados
- Código de condición
- Dirección de la instrucción
En las primeras versiones de la arquitectura (System/360 y System/370), la dirección de instrucción era de 24 [ b ] bits; en versiones posteriores (XA/370), la dirección de instrucción era de 31 bits más un bit de modo (modo de direccionamiento de 24 bits si es cero; modo de direccionamiento de 31 bits si es uno) para un total de 32 bits.
En las instancias actuales de la arquitectura ( z/Architecture ), la dirección de instrucción es de 64 bits y el propio PSW es de 128 bits.
El PSW se puede cargar mediante la instrucción LOAD PSW ( LPSW o LPSWE). Su contenido se puede examinar con la instrucción Extract PSW (EPSW).
Formato
S/360
En todos los casos excepto en el 360/20 , [ c ] el PSW tiene los siguientes formatos. El formato S/360 Extended PSW solo se aplica al 360/67 con el bit 8 del registro de control 6 activado.
S/370
Arquitectura extendida S/370 (S/370-XA)
Arquitectura de Sistemas Empresariales (ESA)
z/Arquitectura
Notas
- ↑ La nomenclatura varía entre las distintas arquitecturas.
- ↑ Sin embargo, un 360/67 [ 7 ] equipado con la función de traducción dinámica de direcciones extendida [ 8 ] tiene un modo de 32 bits seleccionado por el bit 4 del PSW [ 9 ] en el modo PSW extendido [ 8 ] (Registro de control 6, bit 8 [ 10 ] ).
- ↑ A pesar de su nombre, el 350/20 no se ajusta a la arquitectura S/360.
- ↑ El bit 22 se renombra como subdesbordamiento del exponente HFP en ESA/390.
- ↑ El bit 23 se renombra como HFP significado en ESA/390
Referencias
- ↑ S360 .
- ↑ S370 .
- ↑ S370-XA .
- ↑ S370-ESA .
- ↑ S390-ESA . sfn error: no hay destino: CITEREFS390-ESA ( ayuda )
- ↑ z .
- ↑ func67 .
- 1 2 func67 , pág. 57, Glosario .
- ↑ func67 , pág. 15, Obtención y ejecución de instrucciones .
- ↑ func67 , pág. 16, Tabla 4. Registros de control .
- ↑ S360 , pág. 15, Palabra de estado del programa .
- ↑ S360 , págs. 15–16, Interrupción .
- ↑ S370 , págs. 15–16, Interrupción .
- ↑ S370 , pág. 156, Código de longitud de instrucción .
- ↑ func67 , págs. 15–16, Obtención y ejecución de instrucciones .
- ↑ S360 , pág. 156, Código de longitud de instrucción .
- ↑ S370 , págs. 4-8 – , 4–9, Formato de palabra de estado del programa en modo BC .
- ↑ S370 , págs. 6-3 – , 6–5, Acción de interrupción .
- ↑ S370 , págs. 6-7 – , 6–9, Código de longitud de instrucción .
- ↑ S370 , págs. 4-6 – , 4–7, Formato de palabra de estado del programa en modo EC .
- ↑ S370-XA , pág. 4-5, Formato de palabra de estado del programa .
- ↑ S370-ESA , pág. 4-5, Formato de palabra de estado del programa .
- ↑ S390-ESA , pág. 4-5, Formato de palabra de estado del programa . Error de sfn: no hay destino: CITEREFS390-ESA ( ayuda )
- ↑ z , págs. 4-5–4-8, Formato de palabra de estado del programa .
- ↑ z , pág. 4-8, Formato PSW corto .
- S360
- Principios de funcionamiento del sistema IBM System/360 (PDF) (Octava edición). IBM. Septiembre de 1968. A22-6821-7.
- función67
- Características funcionales del IBM System/360 Modelo 67 (PDF) (Tercera edición). IBM. Febrero de 1972. GA27-2719-2.
- S370
- Principios de funcionamiento del sistema IBM System/370 (PDF) (Undécima edición). IBM. Septiembre de 1987. A22-7000-10.
- S370-XA
- Principios de funcionamiento de la arquitectura extendida del IBM System/370 (PDF) (Segunda edición). IBM. Enero de 1987. SA22-7085-1.
- S370-ESA
- Principios de funcionamiento de la arquitectura de sistemas empresariales IBM/370 (PDF) (Primera edición). IBM. Agosto de 1988. SA22-7200-0.
- z
- Principios de funcionamiento de z/Architecture (PDF) (Decimocuarta edición). IBM. Mayo de 2022. SA22-7832-13.
- Flujo de control
- unidad central de procesamiento
- Registros digitales
- Línea de mainframes IBM System/360