SlideShare a Scribd company logo
1 of 10
MICROPROCESADORES
Alumna. FlorTaquiWajuyat
Taqui.sistemasytelematica@gmail.com
http://direcciondeingeniria.blogspot.pe/
Universidad Politécnica Amazónica
CONTENIDO:
•Definición
•Instrucciones de salto
•Ejemplos
DEFINICIÓN
Los saltos condicionales permiten
pasar de una etapa a otra sin ser
éstas consecutivas, sin activar las
etapas intermedias. Estos saltos
pueden darse en sentido evolución
del Grafcet como en sentido inverso
a la evolución del Grafcet.
INSTRUCCIONES DE SALTO
Las instrucciones de salto condicional hacen que el control de flujo del
programa salte a la instrucción cuya dirección está especificada por su
operando si se cumple una condición dada. La dirección de saltos se
representa con una etiqueta:
Las instrucciones de salto se clasifican en tres grupos:
• Saltos si la condición es una comparación no signada
• Saltos si la condición es una comparación signada
• Saltos si la condición es un estado de una bandera o el registro CX.
Saltos si la condición es una comparación no signada
• JA o JNBE: Salta si está por arriba de, o lo mismo si no está
por debajo o igual de.
• JAE o JNB: Salta si está por arriba o es igual, o lo mismo si
no está por debajo de. (CF=0).
• JB o JNAE: Salta si está por debajo de, o salta si no está por
arriba ni es igual. (CF=1).
• JBE o JNA: Salta si está por debajo de o es igual, o salta si
no está por arriba de. (CF=1 or ZF=1).
Saltos si la condición es una comparación signada
• JG o JNLE: Salta si es mayor, lo mismo, salta si no es
menor ni igual. (ZF=0 or OF=SF).
• JGE o JNL: Salta si es mayor o igual, lo mismo, salta si no
es menor. (SF=OF).
• JL o JNGE: Salta si es menor, lo mismo, salta si no es
mayor ni igual. (SF<>OF).
• JLE o JNG: Salta si es menor o igual, lo mismo, salta si no
es mayor. (ZF=1 or SF<>OF).
Saltos si la condición es un estado de una bandera o el registro CX
• JC: Salta si la bandera del carry es 1 (CF=1).
• JNC: Salta si la bandera del carry es 0 (CF=0).
• JO: Salta si la bandera del overflow es 1 (OF=1).
• JNO: Salta si la bandera del overflow es 0 (OF=0).
• JNP o JPO: Salta si no hay paridad (PF=0). Esto significa
paridad par.
• JP o JPE: Salta si hay paridad (PF=1). Esto significa paridad
impar.
• JS: Salta si la bandera del signo es 1 (SF=1).
• JCXZ: Salta si el contenido de CX es 0.
Hay más de 30 instrucciones de salto, vamos a nombrar las más
usadas:
Instrucción Descripción
jmp etiqueta Salto incondicional directo
je etiqueta Salto por igual
jne etiqueta Salto por no igual
jg etiqueta Salto por mayor
jng etiqueta Salto por no mayor
jge etiqueta Salto por mayor igual
jnge etiqueta Salto por no mayor igual
jl etiqueta Salto por menor
jnl etiqueta Salto por no menor
jle etiqueta Salto por menor igual
jnle etiqueta Salto por no menor igual
js etiqueta Salto negativo
EJEMPLOS
Programa que calcula la expresión x=(a+(b-c))/(c*d) dados los valores a=4, b=5, c=2, d=7
declarados en la sección de datos.
# Programa que calcula x=(a+(b-c))/(c*d)
.section .data
a: .long 4
b: .long 5
c: .long 2
d: .long 7
x: .long 0
.section .text
.globl _start
_start:
movl b, %eax # %eax=b
subl c, %eax # %eax=b-c
addl a, %eax # %eax=(b-c)+a
movl c, %ecx # %ecx=c
imull d, %ecx # %ecx=c*d
cltd # %edx=0
idivl %ecx # %eax=((b-c)+a)/(c*d) %edx=resto
movl %eax, x # guarda el resultado en x
movl $1, %eax # fin del programa
movl $0, %ebx
int $0x80
Programa que dados tres valores enteros declarados en la sección de datos, determina el
mayor y lo guarda en una variable denominada mayor.
# Programa que revisa tres numeros y escoge el
mayor
.section .data
a: .long 4
b: .long 2
c: .long 3
mayor: .long 0
.section .text
.globl _start
_start:
movl a, %eax
movl b, %ebx
movl c, %ecx
cmpl %ebx, %eax # compara a con b
jg amayorb # si a>b salta a amayorb
cmpl %ecx, %ebx # compara b con c
jl bmenorc # si b<c salta a mnenorc
movl %ebx, mayor # cuando b es el mayor
jmp fin # salta a fin
bmenorc: movl %ecx, mayor # cuando c es el mayor
jmp fin # salta a fin
amayorb: cmpl %ecx, %eax # compara a con c
jl amenorc # si a<c salta a amenorc
movl %eax,mayor # cuando a es el mayor
jmp fin # salta a fin
amenorc: movl %ecx, mayor # cuando c es el mayor
fin: movl $1, %eax # fin del programa
movl $0, %ebx
int $0x80

More Related Content

Viewers also liked

소셜미디어 정치참여 활용방안 최규문 120705_교정본
소셜미디어 정치참여 활용방안 최규문 120705_교정본소셜미디어 정치참여 활용방안 최규문 120705_교정본
소셜미디어 정치참여 활용방안 최규문 120705_교정본규문 최
 
Clinical management of rheumatoid arthritis in peptic and duodenal ulcer pati...
Clinical management of rheumatoid arthritis in peptic and duodenal ulcer pati...Clinical management of rheumatoid arthritis in peptic and duodenal ulcer pati...
Clinical management of rheumatoid arthritis in peptic and duodenal ulcer pati...Mohamed Fathi Eissa
 
CARACTERISTICAS DEL ESTUDIANTE - ASESOR EN LA EDUCACION A DISTANCIA
CARACTERISTICAS DEL ESTUDIANTE - ASESOR EN LA EDUCACION A DISTANCIACARACTERISTICAS DEL ESTUDIANTE - ASESOR EN LA EDUCACION A DISTANCIA
CARACTERISTICAS DEL ESTUDIANTE - ASESOR EN LA EDUCACION A DISTANCIAMiguel Arias
 
Educación y nuevas tecnologías [recuperado].pptm
Educación y nuevas tecnologías [recuperado].pptmEducación y nuevas tecnologías [recuperado].pptm
Educación y nuevas tecnologías [recuperado].pptmErika Broggi
 
Municipal Solid Waste (MSW) to Energy
Municipal Solid Waste (MSW) to EnergyMunicipal Solid Waste (MSW) to Energy
Municipal Solid Waste (MSW) to EnergyMd Tanvir Alam
 
Christianity and shinto in asia pacific
Christianity and shinto in asia pacificChristianity and shinto in asia pacific
Christianity and shinto in asia pacificDanyil Neruchek
 
The idle proletariat dawn of the dead
The idle proletariat dawn of the deadThe idle proletariat dawn of the dead
The idle proletariat dawn of the deadVictoria Arthur
 

Viewers also liked (12)

Giorgio De Chirico
Giorgio De ChiricoGiorgio De Chirico
Giorgio De Chirico
 
소셜미디어 정치참여 활용방안 최규문 120705_교정본
소셜미디어 정치참여 활용방안 최규문 120705_교정본소셜미디어 정치참여 활용방안 최규문 120705_교정본
소셜미디어 정치참여 활용방안 최규문 120705_교정본
 
Tecnologias educativas
Tecnologias educativasTecnologias educativas
Tecnologias educativas
 
Informe de pasantia Maritza Méndez
Informe de pasantia Maritza MéndezInforme de pasantia Maritza Méndez
Informe de pasantia Maritza Méndez
 
Clinical management of rheumatoid arthritis in peptic and duodenal ulcer pati...
Clinical management of rheumatoid arthritis in peptic and duodenal ulcer pati...Clinical management of rheumatoid arthritis in peptic and duodenal ulcer pati...
Clinical management of rheumatoid arthritis in peptic and duodenal ulcer pati...
 
ARUN NARGUN
ARUN NARGUNARUN NARGUN
ARUN NARGUN
 
CARACTERISTICAS DEL ESTUDIANTE - ASESOR EN LA EDUCACION A DISTANCIA
CARACTERISTICAS DEL ESTUDIANTE - ASESOR EN LA EDUCACION A DISTANCIACARACTERISTICAS DEL ESTUDIANTE - ASESOR EN LA EDUCACION A DISTANCIA
CARACTERISTICAS DEL ESTUDIANTE - ASESOR EN LA EDUCACION A DISTANCIA
 
Educación y nuevas tecnologías [recuperado].pptm
Educación y nuevas tecnologías [recuperado].pptmEducación y nuevas tecnologías [recuperado].pptm
Educación y nuevas tecnologías [recuperado].pptm
 
Aminoácidos
Aminoácidos   Aminoácidos
Aminoácidos
 
Municipal Solid Waste (MSW) to Energy
Municipal Solid Waste (MSW) to EnergyMunicipal Solid Waste (MSW) to Energy
Municipal Solid Waste (MSW) to Energy
 
Christianity and shinto in asia pacific
Christianity and shinto in asia pacificChristianity and shinto in asia pacific
Christianity and shinto in asia pacific
 
The idle proletariat dawn of the dead
The idle proletariat dawn of the deadThe idle proletariat dawn of the dead
The idle proletariat dawn of the dead
 

Similar to Microprocesadores: Saltos condicionales

Similar to Microprocesadores: Saltos condicionales (20)

Estructura de instrucciones de control
Estructura de instrucciones de controlEstructura de instrucciones de control
Estructura de instrucciones de control
 
Estructura de instrucciones de control...
Estructura de instrucciones de control...Estructura de instrucciones de control...
Estructura de instrucciones de control...
 
Saltocondicional
SaltocondicionalSaltocondicional
Saltocondicional
 
Equipo_7.pdf
Equipo_7.pdfEquipo_7.pdf
Equipo_7.pdf
 
Instruccion cmp
Instruccion cmpInstruccion cmp
Instruccion cmp
 
Condicional
CondicionalCondicional
Condicional
 
Condicional
CondicionalCondicional
Condicional
 
Condicional
CondicionalCondicional
Condicional
 
Diagrama de Flujo
Diagrama de FlujoDiagrama de Flujo
Diagrama de Flujo
 
Estructuras de control selectivas
Estructuras de control selectivasEstructuras de control selectivas
Estructuras de control selectivas
 
Estructuras de control selectivas
Estructuras de control selectivasEstructuras de control selectivas
Estructuras de control selectivas
 
Salto condicional
Salto condicionalSalto condicional
Salto condicional
 
SALTOCONDICIONAL
SALTOCONDICIONALSALTOCONDICIONAL
SALTOCONDICIONAL
 
Clase 2 diagramas de flujo
Clase 2 diagramas de flujoClase 2 diagramas de flujo
Clase 2 diagramas de flujo
 
Salto condicional
Salto condicionalSalto condicional
Salto condicional
 
Salto condicional
Salto condicionalSalto condicional
Salto condicional
 
MN01_-_Introduccion_Matlab.pdf
MN01_-_Introduccion_Matlab.pdfMN01_-_Introduccion_Matlab.pdf
MN01_-_Introduccion_Matlab.pdf
 
Flujo de control
Flujo de controlFlujo de control
Flujo de control
 
Clase 1 Visual Basic_progr..pdf
Clase 1 Visual Basic_progr..pdfClase 1 Visual Basic_progr..pdf
Clase 1 Visual Basic_progr..pdf
 
Instrucciones assembler
Instrucciones assemblerInstrucciones assembler
Instrucciones assembler
 

More from Taqui Wajuyat Flor (20)

Gobierno Electrónico
Gobierno ElectrónicoGobierno Electrónico
Gobierno Electrónico
 
Subneteo
SubneteoSubneteo
Subneteo
 
IP
IPIP
IP
 
Modelo de Referencia TCP
Modelo de Referencia TCPModelo de Referencia TCP
Modelo de Referencia TCP
 
Modelo de Referencia OSI
Modelo de Referencia OSIModelo de Referencia OSI
Modelo de Referencia OSI
 
Dispositivos de red
Dispositivos de redDispositivos de red
Dispositivos de red
 
Clasificación de Redes
Clasificación de RedesClasificación de Redes
Clasificación de Redes
 
Red
RedRed
Red
 
Arreglos
ArreglosArreglos
Arreglos
 
Ciclos
CiclosCiclos
Ciclos
 
Lenguaje ensamblador
Lenguaje ensambladorLenguaje ensamblador
Lenguaje ensamblador
 
Programación de microcontrolador
Programación de microcontroladorProgramación de microcontrolador
Programación de microcontrolador
 
Microcontrolador
MicrocontroladorMicrocontrolador
Microcontrolador
 
Arquitectura risc
Arquitectura riscArquitectura risc
Arquitectura risc
 
Arquitectura cisc
Arquitectura ciscArquitectura cisc
Arquitectura cisc
 
Arquitectura del microprocesador
Arquitectura del microprocesadorArquitectura del microprocesador
Arquitectura del microprocesador
 
Microprocesador
MicroprocesadorMicroprocesador
Microprocesador
 
Microsoft sql server 2012
Microsoft sql server 2012Microsoft sql server 2012
Microsoft sql server 2012
 
Normalización
NormalizaciónNormalización
Normalización
 
Calculo relacional
Calculo relacionalCalculo relacional
Calculo relacional
 

Recently uploaded

Obras paralizadas en el sector construcción
Obras paralizadas en el sector construcciónObras paralizadas en el sector construcción
Obras paralizadas en el sector construcciónXimenaFallaLecca1
 
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)ssuser563c56
 
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIASTEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIASfranzEmersonMAMANIOC
 
presentacion medidas de seguridad riesgo eléctrico
presentacion medidas de seguridad riesgo eléctricopresentacion medidas de seguridad riesgo eléctrico
presentacion medidas de seguridad riesgo eléctricoalexcala5
 
Comite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxComite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxClaudiaPerez86192
 
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESAIPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESAJAMESDIAZ55
 
04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf
04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf
04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdfCristhianZetaNima
 
Principales aportes de la carrera de William Edwards Deming
Principales aportes de la carrera de William Edwards DemingPrincipales aportes de la carrera de William Edwards Deming
Principales aportes de la carrera de William Edwards DemingKevinCabrera96
 
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALCHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALKATHIAMILAGRITOSSANC
 
desarrollodeproyectoss inge. industrial
desarrollodeproyectoss  inge. industrialdesarrollodeproyectoss  inge. industrial
desarrollodeproyectoss inge. industrialGibranDiaz7
 
CLASe número 4 fotogrametria Y PARALAJE.pptx
CLASe número 4 fotogrametria Y PARALAJE.pptxCLASe número 4 fotogrametria Y PARALAJE.pptx
CLASe número 4 fotogrametria Y PARALAJE.pptxbingoscarlet
 
Elaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdfElaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdfKEVINYOICIAQUINOSORI
 
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
01 MATERIALES AERONAUTICOS VARIOS clase 1.pptoscarvielma45
 
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICAINTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICAJOSLUISCALLATAENRIQU
 
Flujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptxFlujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptxEduardoSnchezHernnde5
 
nom-028-stps-2012-nom-028-stps-2012-.pdf
nom-028-stps-2012-nom-028-stps-2012-.pdfnom-028-stps-2012-nom-028-stps-2012-.pdf
nom-028-stps-2012-nom-028-stps-2012-.pdfDiegoMadrigal21
 
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptMarianoSanchez70
 
Clase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVIL
Clase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVILClase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVIL
Clase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVILProblemSolved
 
ECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfmatepura
 

Recently uploaded (20)

Obras paralizadas en el sector construcción
Obras paralizadas en el sector construcciónObras paralizadas en el sector construcción
Obras paralizadas en el sector construcción
 
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
 
VALORIZACION Y LIQUIDACION MIGUEL SALINAS.pdf
VALORIZACION Y LIQUIDACION MIGUEL SALINAS.pdfVALORIZACION Y LIQUIDACION MIGUEL SALINAS.pdf
VALORIZACION Y LIQUIDACION MIGUEL SALINAS.pdf
 
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIASTEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
 
presentacion medidas de seguridad riesgo eléctrico
presentacion medidas de seguridad riesgo eléctricopresentacion medidas de seguridad riesgo eléctrico
presentacion medidas de seguridad riesgo eléctrico
 
Comite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxComite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptx
 
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESAIPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
 
04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf
04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf
04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf
 
Principales aportes de la carrera de William Edwards Deming
Principales aportes de la carrera de William Edwards DemingPrincipales aportes de la carrera de William Edwards Deming
Principales aportes de la carrera de William Edwards Deming
 
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALCHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
 
desarrollodeproyectoss inge. industrial
desarrollodeproyectoss  inge. industrialdesarrollodeproyectoss  inge. industrial
desarrollodeproyectoss inge. industrial
 
CLASe número 4 fotogrametria Y PARALAJE.pptx
CLASe número 4 fotogrametria Y PARALAJE.pptxCLASe número 4 fotogrametria Y PARALAJE.pptx
CLASe número 4 fotogrametria Y PARALAJE.pptx
 
Elaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdfElaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdf
 
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
 
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICAINTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
 
Flujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptxFlujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptx
 
nom-028-stps-2012-nom-028-stps-2012-.pdf
nom-028-stps-2012-nom-028-stps-2012-.pdfnom-028-stps-2012-nom-028-stps-2012-.pdf
nom-028-stps-2012-nom-028-stps-2012-.pdf
 
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
 
Clase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVIL
Clase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVILClase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVIL
Clase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVIL
 
ECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdf
 

Microprocesadores: Saltos condicionales

  • 3. DEFINICIÓN Los saltos condicionales permiten pasar de una etapa a otra sin ser éstas consecutivas, sin activar las etapas intermedias. Estos saltos pueden darse en sentido evolución del Grafcet como en sentido inverso a la evolución del Grafcet.
  • 4. INSTRUCCIONES DE SALTO Las instrucciones de salto condicional hacen que el control de flujo del programa salte a la instrucción cuya dirección está especificada por su operando si se cumple una condición dada. La dirección de saltos se representa con una etiqueta: Las instrucciones de salto se clasifican en tres grupos: • Saltos si la condición es una comparación no signada • Saltos si la condición es una comparación signada • Saltos si la condición es un estado de una bandera o el registro CX.
  • 5. Saltos si la condición es una comparación no signada • JA o JNBE: Salta si está por arriba de, o lo mismo si no está por debajo o igual de. • JAE o JNB: Salta si está por arriba o es igual, o lo mismo si no está por debajo de. (CF=0). • JB o JNAE: Salta si está por debajo de, o salta si no está por arriba ni es igual. (CF=1). • JBE o JNA: Salta si está por debajo de o es igual, o salta si no está por arriba de. (CF=1 or ZF=1).
  • 6. Saltos si la condición es una comparación signada • JG o JNLE: Salta si es mayor, lo mismo, salta si no es menor ni igual. (ZF=0 or OF=SF). • JGE o JNL: Salta si es mayor o igual, lo mismo, salta si no es menor. (SF=OF). • JL o JNGE: Salta si es menor, lo mismo, salta si no es mayor ni igual. (SF<>OF). • JLE o JNG: Salta si es menor o igual, lo mismo, salta si no es mayor. (ZF=1 or SF<>OF).
  • 7. Saltos si la condición es un estado de una bandera o el registro CX • JC: Salta si la bandera del carry es 1 (CF=1). • JNC: Salta si la bandera del carry es 0 (CF=0). • JO: Salta si la bandera del overflow es 1 (OF=1). • JNO: Salta si la bandera del overflow es 0 (OF=0). • JNP o JPO: Salta si no hay paridad (PF=0). Esto significa paridad par. • JP o JPE: Salta si hay paridad (PF=1). Esto significa paridad impar. • JS: Salta si la bandera del signo es 1 (SF=1). • JCXZ: Salta si el contenido de CX es 0.
  • 8. Hay más de 30 instrucciones de salto, vamos a nombrar las más usadas: Instrucción Descripción jmp etiqueta Salto incondicional directo je etiqueta Salto por igual jne etiqueta Salto por no igual jg etiqueta Salto por mayor jng etiqueta Salto por no mayor jge etiqueta Salto por mayor igual jnge etiqueta Salto por no mayor igual jl etiqueta Salto por menor jnl etiqueta Salto por no menor jle etiqueta Salto por menor igual jnle etiqueta Salto por no menor igual js etiqueta Salto negativo
  • 9. EJEMPLOS Programa que calcula la expresión x=(a+(b-c))/(c*d) dados los valores a=4, b=5, c=2, d=7 declarados en la sección de datos. # Programa que calcula x=(a+(b-c))/(c*d) .section .data a: .long 4 b: .long 5 c: .long 2 d: .long 7 x: .long 0 .section .text .globl _start _start: movl b, %eax # %eax=b subl c, %eax # %eax=b-c addl a, %eax # %eax=(b-c)+a movl c, %ecx # %ecx=c imull d, %ecx # %ecx=c*d cltd # %edx=0 idivl %ecx # %eax=((b-c)+a)/(c*d) %edx=resto movl %eax, x # guarda el resultado en x movl $1, %eax # fin del programa movl $0, %ebx int $0x80
  • 10. Programa que dados tres valores enteros declarados en la sección de datos, determina el mayor y lo guarda en una variable denominada mayor. # Programa que revisa tres numeros y escoge el mayor .section .data a: .long 4 b: .long 2 c: .long 3 mayor: .long 0 .section .text .globl _start _start: movl a, %eax movl b, %ebx movl c, %ecx cmpl %ebx, %eax # compara a con b jg amayorb # si a>b salta a amayorb cmpl %ecx, %ebx # compara b con c jl bmenorc # si b<c salta a mnenorc movl %ebx, mayor # cuando b es el mayor jmp fin # salta a fin bmenorc: movl %ecx, mayor # cuando c es el mayor jmp fin # salta a fin amayorb: cmpl %ecx, %eax # compara a con c jl amenorc # si a<c salta a amenorc movl %eax,mayor # cuando a es el mayor jmp fin # salta a fin amenorc: movl %ecx, mayor # cuando c es el mayor fin: movl $1, %eax # fin del programa movl $0, %ebx int $0x80