[Pregunta de 5 puntos]
Considere el siguiente fragmento de programa en lenguaje ensamblador de cierto procesador hipotético. El procesador tiene tres registros de propósito general R1, R2 y R3. Los significados de las instrucciones se muestran mediante comentarios (que comienzan con ; ) después de las instrucciones.
X: CMP R1, 0 ;Compare R1 and 0, set flags appropriately in status register JZ Z ;Jump if zero to target Z MOV R2, R1 ;Copy contents of R1 to R2 SHR R1 ;Shift right R1 by 1 bit SHL R1 ;Shift left R1 by 1 bit CMP R2, R1 ;Compare R2 and R1 and set flag in status register JZ Y ;Jump if zero to target Y INC R3 ;Increment R3 by 1; Y: SHR R1 ;Shift right R1 by 1 bit JMP X ;Jump to target X Z:...
una. Inicialmente R1, R2 y R3 contienen el valor 5, 0 y 0 respectivamente. ¿Cuáles son los valores finales de R1 y R3 cuando el control llega a Z?
b. En general, si R1, R2 y R3 contienen inicialmente los valores n, 0 y 0 respectivamente. ¿Cuál es el valor final de R3 cuando el control llega a Z?
Respuesta:
Explicación:
Cuestionario de esta pregunta
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA