cursos:ensamblador:habituales

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anterior Revisión previa
cursos:ensamblador:habituales [02-02-2024 18:34] – [Comparaciones de 8 bits] sromerocursos:ensamblador:habituales [02-02-2024 18:39] (actual) – [Comparaciones de 8 bits] sromero
Línea 129: Línea 129:
     cp 50     cp 50
     jp c, menor_que_50     jp c, menor_que_50
-    jp nz, menor_o_igual_que_50     ; => Si no salto, es que C = 0+    jp nz, mayor_que_50             ; => Si no salto, es que C = 0
                                     ;    Ahora o es '=' o es '<' segun Z                                     ;    Ahora o es '=' o es '<' segun Z
  
-    ; mayor o igual que 50+    ; igual que 50 
 +    ; (... codigo para caso a == 50 ...) 
 +     
 +    jr fin_comparacion 
 + 
 +mayor_que_50:
     ; (... codigo para caso a > 50 ...)     ; (... codigo para caso a > 50 ...)
     jr fin_comparacion     jr fin_comparacion
  
 menor_que_50: menor_que_50:
-menor_o_igual_que_50: +    ; (... codigo para caso a < 50 ...)
-    ; (... codigo para caso a <50 ...)+
  
 fin_comparacion: fin_comparacion:
 </code> </code>
  
- Como se puede ver en el código, tenemos que añadir un ''jp nz'' o ''jp z'' tras el chequeo del carry para comprobar si es "menor o igual". Si queremos ahorrar varios t-estados, podemos hacer las comparaciones de ''>='' y ''<='' sin igualdad, pero utilizando el número anterior o el siguiente. Repitamos el ejemplo anterior, pero con 51 (''>='') o con 49 (''<=''):+ Como se puede ver en el código, tenemos que añadir un ''JP NZ'' o ''JP Z'' tras el chequeo del carry para comprobar si es "menor o igual". Si queremos ahorrar varios t-estados, podemos hacer las comparaciones de ''>='' y ''<='' sin igualdad, pero utilizando el número anterior o el siguiente. Repitamos el ejemplo anterior, pero con 51 (''>='') o con 49 (''<=''):
  
 <code z80> <code z80>
  • cursos/ensamblador/habituales.txt
  • Última modificación: 02-02-2024 18:39
  • por sromero