Red de conocimiento informático - Conocimiento sistemático - Montaje de cmp

Montaje de cmp

La instrucción cmp(compare) compara los tamaños de dos operandos.

El lenguaje ensamblador es un lenguaje de programación orientado a máquina. En lenguaje ensamblador, se utilizan mnemónicos en lugar de códigos de operación, y símbolos o etiquetas de dirección en lugar de códigos de dirección. De esta manera, el uso de símbolos para reemplazar el código binario del lenguaje de máquina convierte el lenguaje de máquina en lenguaje ensamblador. Por lo tanto, el lenguaje ensamblador también se llama lenguaje simbólico. Los programas escritos en lenguaje ensamblador no pueden ser reconocidos directamente por las máquinas. Se requiere un programa para traducir el lenguaje ensamblador al lenguaje de máquina. Este programa de traducción se llama ensamblador y es un software de sistema de procesamiento de lenguaje en el software del sistema. El proceso de traducción del lenguaje ensamblador al lenguaje de máquina por parte del ensamblador se llama ensamblador.

Ejemplo: cmp oprd1, oprd2 resta el segundo operando de la primera operación, pero no afecta los valores de los dos operandos. Afecta a los CF, ZF, OF, AF y PF del. bandera. . Si luego de ejecutar la instrucción, ZF=1, significa que los dos números son iguales, porque cero es 1, lo que significa que el resultado es 0. Cuando no está firmado, CF = 1 indica que hay un acarreo o préstamo. cmp es una operación de resta, por lo que puede verse como un préstamo, por lo que oprd1lt;

CF = 0 significa que no hay préstamo, pero en este momento debes prestar atención a si ZF es 0. Si es 0, significa que el resultado no es 0, por lo que en este momento oprd1gt; , cuando hay un signo, si SF = 0, OF = 0 significa que el valor en este momento es un número positivo y no hay desbordamiento. Se puede ver intuitivamente que oprd1gt, si SF = 1, OF =. 0, significa que el valor en este momento es un número negativo y no hay desbordamiento, entonces oprd1lt; si SF = 0, OF = 1, significa que el valor en este momento es un número positivo. está desbordado, se puede ver que oprd1lt; oprd2, si SF = 1, OF = 1, significa que en este momento El valor es un número negativo y hay desbordamiento, se puede ver que oprd1gt;oprd2

.