Un registro de prueba , en el procesador Intel 80386 e Intel 80486 , era un registro utilizado por el procesador, generalmente para realizar una autoprueba. La mayoría de estos registros no estaban documentados y eran utilizados por software especializado. Los registros de prueba se denominaron TR3 a TR7 . Los programas regulares no suelen requerir que estos registros funcionen. Con el Pentium , los registros de prueba fueron reemplazados por una variedad de registros específicos del modelo (MSR).
Se proporcionaron dos registros de prueba, TR6 y TR7 , para fines de prueba. TR6 era el registro de comando de prueba y TR7 era el registro de datos de prueba. A estos registros se accede mediante variantes de la instrucción MOV . Un registro de prueba puede ser el operando de origen o el operando de destino. Las instrucciones MOV se definen tanto en el modo de dirección real y modo protegido . Los registros de prueba son recursos privilegiados. En modo protegido, las instrucciones MOV que acceden a ellas solo se pueden ejecutar a nivel de privilegio0. Un intento de leer o escribir los registros de prueba cuando se ejecuta en cualquier otro nivel de privilegio provoca una excepción de protección general. Además, esas instrucciones generan una excepción de código de operación no válida en cualquier CPU posterior a 80486.
La instrucción se codifica de dos formas, según el flujo de datos. El movimiento de datos de un registro de propósito general a un registro de prueba se codifica como 0F 26 /r
( r/m
siendo el GPR y reg
el registro de prueba). El movimiento de datos en sentido contrario (es decir, desde el registro de prueba a un registro de propósito general) se codifica como 0F 24 /r
( r/m
siendo el GPR y reg
el registro de prueba). [1]
Ver también
Referencias
- ^ Introducción al 80386, incluida la hoja de datos del 80386 . Intel . Abril de 1986. p. 122.