Pic ensamblador

Solo disponible en BuenasTareas
  • Páginas : 8 (1815 palabras )
  • Descarga(s) : 0
  • Publicado : 16 de agosto de 2012
Leer documento completo
Vista previa del texto
9. Lenguaje ensamblador
Lenguaje máquina: un programa o secuencia de 
instrucciones viene dado por una secuencia de códigos 
binarios.
Lenguaje ensamblador: secuencia lógica de sentencias 
pertenecientes a alguna de las siguientes clases:
­ Una línea de comentario.
­ Una instrucción ejecutable.
­ Una directiva de ensamblado.
La escritura en lenguaje máquina es tediosa y proclive a errores, el lenguaje ensamblador facilita la tarea de la 
escritura sin perder la cercanía a la máquina.
1

9. Lenguaje ensamblador
Programa ensamblador: traduce el lenguaje ensamblador al 
lenguaje máquina de la CPU 

Programa
fuente

ensamblador

lenguaje ensamblador

Programa
objeto
lenguaje máquina

2

9. Lenguaje ensambladorEl formato básico de una sentencia en lenguaje ensamblador 
es:
Etiqueta   Opcode   Operando(s)   Comentario
* El campo etiqueta es opcional
* Opcode contiene el mnemónico de la instrucción o la 
directiva de ensamblador.
* Operando(s), son los operandos (1 o 2 o ninguno) de la 
instrucción o directiva. Cuando hay 2 o más operandos, 
estos se separan por comas.
* De forma opcional, el último campo es el comentario.
3 9. Lenguaje ensamblador
Directivas:  son  órdenes  para  el  ensamblador  y  no  tienen 
traducción a código máquina. Utilizaremos:
 ORG: 
­ Inicializa el contador de programa con el valor del operando. 
Si no se utiliza una directiva ORG, se asume que el PC vale 
0.
- Sintaxis: ORG valor
- Ejemplo:

ORG $400
4

9. Lenguaje ensamblador

- EQU:­ Asigna al símbolo contenido en el campo etiqueta el valor de la 
expresión en el campo operando.
- Sintaxis: etiqueta EQU valor
- Ejemplo:

PI EQU 3.1416

5

9. Lenguaje ensamblador
DC:
­  Define  constantes  en  memoria.  Permite  asignar  valores 
numéricos,  tablas,  caracteres  o  cadenas  a  variables  de 
memoria. 
- Añadiendo .B, .W o .L se indica el tamaño de la
constante. Si no se indica nada, se asume tamaño W.
- Sepueden asignar hasta 256 bytes de datos en una
única directiva

6

9. Lenguaje ensamblador
­ Sintaxis:      ETIQUETA     DC.t    const1,const2,.....
­ Ejemplos:

7

9. Lenguaje ensamblador
­ DS: 

­ Se utiliza para reservar posiciones de memoria.
­ Añadiendo .B,  .W o  .L   se indica el tamaño de cada 
elemento reservado. Si no se indica nada, se asume 
tamaño W.­ Sintaxis:  ETIQUETA  DS.t    valor
­ Ejemplo:      
DS.B 256  Reserva 256 bytes consecutivos de 
memoria
DS.L  1     Reserva una palabra larga
Hola  DS    2     Reserva dos palabras a partir de la 
dirección asignada por el ensamblador a Hola

8

10. Procesamiento de excepciones

Las excepciones permiten interrumpir la ejecución
normal de una secuencia de instrucciones para
pasar a atender, deforma inmediata, la situación
particular que las genera.
Se clasifican en internas o externas según el origen
de la situación particular.

9

10. Procesamiento de excepciones
Clasificación

10

10. Procesamiento de excepciones









Cada  excepción  tiene  asociada  un  vector  de  excepción 
almacenado en una posición concreta de la memoria.
Un  vector  de excepción  es  una  dirección  de  memoria  (puntero, 
doble  palabra).  Dicha  dirección  hace  referencia  a  la  posición  de 
memoria  que  ocupa  la  primera  instrucción  de  la  rutina  de 
excepción. 
Existen un total de  255  vectores de excepción almacenados en la 
tabla de vectores de excepción  situada a partir de la dirección  
$000000 de la RAM y con un tamaño total de 1Kbytes.Cada  vector  de  excepción  de  la  tabla  es  identificado  por  el 
número de vector de excepción, N  (N varía de 0 a 255, byte). A 
partir  de  este  N,  el  microprocesador  determina  la  dirección  de  la 
RAM  donde  se  encuentra  el  vector  de  excepción  realizando  la 
operación 4*N.
Los  64  primeros  vectores  están  preasignados  (aunque  pueden ...
tracking img