Last active
May 6, 2016 19:41
-
-
Save vduenasg/3157979 to your computer and use it in GitHub Desktop.
Tablas - Bifurcacion
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| // * Author: Victor Dueñas Guardia | |
| // * Info: www.netzek.com | |
| // @Ejemplo4: | |
| // Cada vez que se ingrese el valor uno incremente el registro R17 | |
| // Pseudocódigo: | |
| // - Cargo el número de la tabla de bifurcación. | |
| // - Cargo la dirección de la tabla de bifurcación. | |
| // - Realiza la operación correspondiente en la tabla. | |
| // - Continúa con el programa. | |
| .INCLUDE "M16DEF.INC" //Incluye definicion archivos ATmega16 | |
| LDI R16,HIGH(RAMEND) | |
| OUT SPH,R16 | |
| LDI R16,LOW(RAMEND) | |
| OUT SPL,R16 //Coloco la Pila al final de la RAM | |
| LDI R16,1 //Cargo el numero de la bifurcacion | |
| LDI ZL,LOW(Bifurcaciones) | |
| LDI ZH,HIGH(Bifurcaciones) //Cargo en el puntero Z la direccion de la tabla de bifurcaciones | |
| ADD R16,R16 | |
| ADD ZL,R16 | |
| LDI R16,0 | |
| ADC ZH,R16 | |
| IJMP | |
| Seguir: | |
| BUCLE: RJMP BUCLE //Bucle infinito | |
| //......PROCEDIMIENTOS | |
| CERO: | |
| NOP | |
| JMP Seguir | |
| UNO: | |
| INC R17 | |
| JMP Seguir | |
| DOS: | |
| NOP | |
| JMP Seguir | |
| //......TABLAS | |
| .CSEG | |
| .ORG 0x100 | |
| Bifurcaciones: | |
| JMP CERO | |
| JMP UNO | |
| JMP DOS |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment