SlideShare una empresa de Scribd logo
1 de 33
Lenguaje ensamblador Lenguaje de bajo nivel Tipos de leguaje ensamblador Cruzados Macroensamblador Ensambladores de 1 fase Ensambladores de2 faces
Estructura 1.Librerias 2.Etiquetas 3.Inicio 4.Codigo 5.Bucle 6.Fin
Sistemas Numéricos 10 Decimal 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 2 Binario 0, 1 16 Hexadecimal 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F
Notación posicional En esta notación el dígito de más a la izquierda (an-1) el que “pesa” más se denomina dígito más significativo En esta notación el dígito más a la derecha (a-m), es decir, el que “pesa” menos se le llama dígito menos significativo
Sistema  Hexadecimal
Sistema Decimal
Sistema Binario
RAM Se puede usar para leer y escribir datos en ella Contador del programa ROM Sirve para la lectura de datos solamente Puertos Sirven para la entrada o salida de datos Aumenta el contador del programa Leva las direcciones de los registros Control Convierte los datos de instrucción en código para que el procesador lo reconozca Oscilador o reloj del procesador Hace las pulsaciones para que el procesador haga operaciones Memoria principal ALU Arithmetic Logic Unit
¿Que es la gestión de memoria? La parte del sistema operativo que administra la memoria se llama administrador de memoria y su labor consiste llevar un registro de las partes de memoria que se estén utilizando y aquellas que no, con el fin de asignar espacio en memoria a los procesos cuando estos lo necesiten y liberándola cuando terminen.
Direcciones lógicas y direcciones físicas  El concepto de espacio de direcciones  lógicas  vinculado a un espacio de direcciones físicas  separado es crucial para una buena gestión de memoria Dirección lógica : es la dirección que genera el proceso; también se conoce como dirección virtual
Traducción de direcciones . Cuando un proceso es asignada al estado de ejecución, un registro base es cargado  con la dirección física de inicio del proceso .Un registro limite es cargado con la dirección física final .Cuando una dirección relativa es encontrada es relacionada al registro base y comparada con el registro limite
Registro base: determina la dirección física donde  se comienza el espacio  de memoria del proceso Registro limite:  establece la dirección donde se determina el espacio de memoria del proceso en relación al registro base
A QUE SE LE LLAMA PROGRAMACION DE SISTEMAS  Se entiende por programación de sistemas el conjunto de programas necesario para que una computadora de una imagen coherente y monolítica ante sus usuarios. Es un área especializada dentro de las ciencias de la computación. Así, mediante la programación de sistemas, no solo se manejan las computadoras por medio del lenguaje maquina (0 y 1) sino por otros sistemas operativos, sin lo cual sería muy difícil la interacción con la maquina.
Evolución de los Lenguajes de Programación
PRIMERA GENERACIÓN Lo constituyen los lenguajes maquina. Estos se consideran como de bajo nivel por que no existe un programa de codificación menos complicado que el que utiliza los símbolos binarios 1 y 0.  ASCII, utiliza ceros y unos para representar letras del alfabeto.
SEGUNDA GENERACIÓN      lenguaje ensamblador.     Los lenguajes ensambladores usan códigos como: a    para agregar                    subwf  restara una cantidad mvc   para mover                  btfss comparar y así sucesivamente. Los programas de software de sistemas tales como los sistemas operativos y los programas de utilidad se escriben con frecuencia en un lenguaje ensamblador.
  TERCERA GENERACIÓN Son relativamente independientes del hardware. el programa se puede utilizar en computadoras diferentes  Primeros lenguajes de alto nivel  Cobol(Common Business Oriented Language)1958 Algol (Algorithmic Language) 1960 Apl (A Programming Language)1961 Basic(Beginners All purpose Symbolic Instruction Code) 1964 C               1970 Pascal()
Diferencias entre Ensamblador, Compilador e Interpretes
Ensambladores Se llaman ensambladores los programas encargados de traducir los programas escritos en ensamblador a código binario.
Compiladores El compilador es un programa que traduce el código de alto nivel a código binario. Es, por tanto, parecido al ensamblador, pero mucho más complejo, ya que las diferencias entre los lenguajes de alto nivel y el código binario son muy grandes.
Intérpretes El intérprete es un programa que traduce el código de alto nivel a código binario pero, a diferencia del compilador, lo hace en tiempo de ejecución.  Es decir, no se hace un proceso previo de traducción de todo el programa fuente a binario, sino que se va traduciendo y ejecutando instrucción por instrucción.
Compiladores frente a intérpretes              Un intérprete          Un compilador  facilita la búsqueda de errores, pues la ejecución de un programa puede interrumpirse en cualquier momento para estudiar el entorno. El programa puede modificarse sobre la marcha, sin necesidad de volver a comenzar la ejecución. permite utilizar funciones y operadores más potentes, como por ejemplo ejecutar código contenido en una variable en forma de cadenas de caracteres. suele generar programas más rápidos y eficientes, ya que el análisis del lenguaje fuente se hace una sola vez, durante la generación del programa equivalente. Cualquier lenguaje puede ser ejecutado tanto vía intérprete o vía compilador, pero algunos lenguajes suelen asociarse más a una vía que a la otra, y por esto son llamados "lenguajes interpretados" o "lenguajes compilados" respectivamente.
LIGADORES Un ligador es un programa de sistema que combina dos o mas programas objeto separados y permite que se hagan referencias unos a otros, o sea, que cada uno de estos programas pueden hacer referencia a código ó variables de los otros programas con los que está enlazado.
CARGADOR Un cargador es un programa que coloca en la memoria para su ejecución, el programa guardado en algún dispositivo de almacenamiento secundario. El cargador consiste en un juego de instrucciones que permiten al dispositivo de entrada ( teclado ó unidad de cinta ) asignar la dirección de inicio de la memoria y asegurar que el computador leerá el programa y lo cargara byte a byte.
La información que hace que el hardware de la computadora realice una determinada actividad se llama instrucción Se denomina lenguaje máquina a la serie de datos que la parte física de la computadora o hardware, es capaz de interpretar. Las instrucciones así formadas equivalen a acciones elementales de la máquina Lenguaje de bajo nivel La segunda parte de la instrucción es el operando, que indica la computadora dónde hallar o almacenar los datos y otras instrucciones que se van a manipular. El lenguaje máquina de una computadora consta de cadenas de números binarios (ceros y unos) La primera es el comando u operación, que dice a la computadora cuál es la función que va a realizar.
Apareció a principios de los 50 con el fin de facilitar la labor de los programadores Uno de los primeros pasos para mejorar el proceso de preparación de programas fue sustituir los códigos de operaciones numéricos del lenguaje de máquina por símbolos alfabéticos LENGUAJE ENSAMBLADOR se desarrollaron códigos nemotécnicos para las operaciones y direcciones simbólicas. ESTRUCTURA  Bucle Librerías Inicio Código Fin Etiquetas
Las instrucciones más importantes que podemos manejar son las que proporciona el fabricante de un microprocesador para su producto. Directriz EQU Sirve para “igualar” la posición de cualquier registro a un nombre personalizado que le hayamos dado nosotros Directriz ORG Esta directriz dice al ensamblador a partir de que posición de memoria se situarán las siguientes instrucciones.  Directriz INCLUDE Esta instrucción índica qué archivos deberán tomarse en cuenta a la hora de compilar el código. Directriz END Esta debe ir incluida una sola vez en todo el programa. En concreto, esta debe situarse al final, para indicar al ensamblador que el programa ha finalizado. DIRECTRICES DEL ENSAMBLADOR Directriz LISTEste comando sirve para que el compilador tenga en cuenta sobre qué procesador se está trabajando. Este comando debe estar en todo proyecto, situado debajo del “include”, con la siguiente sintaxis.  LIST   P=16F627A Directriz #DEFINEDefine se usa para crear pequeñas macros. Con estas macros podremos poner nombres a pequeños fragmentos de código que nos facilitarán la realización y comprensión del algoritmo.   Directriz TITLEEsta directriz no sirve de mucho, pero será útil para aquellos que quieran que el compilador tenga en cuenta el título que le ha puesto a su código.   Directriz TITLEEsta directriz no sirve de mucho, pero será útil para aquellos que quieran que el compilador tenga en cuenta el título que le ha puesto a su código.
Para utilizar una macro, primero hay que declararla. En la declaración se establece el nombre que se le dará a la macro y el conjunto de instrucciones que representará.  El programador escribirá el nombre de la macro en cada uno de los lugares donde se requiera la aplicación de las instrucciones por ella representadas. La declaración se realiza una sola vez, pero la utilización o invocación a la macro (macro llamada) puede hacerse cuantas veces sea necesario.  Con el fin de evitar al programador la tediosa repetición de partes idénticas de un programa, los ensambladores y compiladores cuentan con macro procesadores que permiten definir una abreviatura para representar una parte de un programa y utilizar esa abreviatura cuantas veces sea necesario. La utilización de macros posibilita la reducción del tamaño del código fuente, aunque el código objeto tiende a ser mayor que cuando se utilizan funciones.  MACROZ EN PROGRAMACION  Es tan común el empleo de macroinstrucciones que se les considera como una extensión de los lenguajes. El macro procesador se encarga, en una primera pasada, de registrar todas las declaraciones de macros y de rastrear el programa fuente para detectar todas las macro llamadas. El macro procesador elabora dos tablas para el manejo de las
Sintaxis de una macro La declaración de la macro se lleva a cabo de la siguiente forma: NombreMacro MACRO [parametro1, parametro2...] Aunque se tiene la funcionalidad de los parametros es posible crear una macro que no los necesite.  Las partes que componen a una macro son:  *Declaración de la macro *código de la macro *Directiva de terminación de la macro La directiva de terminación de la macro es: ENDM Posicion MACRO Fila, ColumnaPUSH AXPUSH BXPUSH DXMOV AH, 02HMOV DH, FilaMOV DL, ColumnaMOV BH, 0INT 10HPOP DXPOP BXPOP AXENDM
Bibliotecas de macros ELEMENTOS DE ENSAMBLADORES son grupos de macros que pueden ser incluidas en un programa desde un archivo diferente. La creación de estas bibliotecas es muy sencilla, unicamente tenemos que escribir un archivo con todas las macros que se necesitarán y guardarlo como archivo de texto.  FUNCIONES La tarea fundamental de un ensamblador es traducir un programa en lenguaje de ensamblador al código correspondiente en lenguaje de máquina. ,[object Object]
Convertir los operándoos simbólicos (las etiquetas o variables) en las direcciones correspondientes de los operándoos.Ejemplo: Suponiendo que se guardó el archivo de las macros con el nombre de MACROS.TXT la instrucción Include se utilizaría de la siguiente forma:  ;Inicio del programaInclude MACROS.TXT.MODEL SMALL.DATA;Aqui van los datos.CODEInicio:;Aqui se inserta el código del programa.STACK;Se define la pilaEnd Inicio;Termina nuestro programa ,[object Object]
Convertir las constantes definidas en el programa en su verdadera representación.

Más contenido relacionado

La actualidad más candente

Lenguaje ensamblador basico
Lenguaje ensamblador basicoLenguaje ensamblador basico
Lenguaje ensamblador basico
Gustavo Davila
 
GRUPO 4 Elementos a traves de los lenguajes de programacion, lenguaje de maqu...
GRUPO 4 Elementos a traves de los lenguajes de programacion, lenguaje de maqu...GRUPO 4 Elementos a traves de los lenguajes de programacion, lenguaje de maqu...
GRUPO 4 Elementos a traves de los lenguajes de programacion, lenguaje de maqu...
Sarai Rodriguez
 
Lenguaje de ensamblador
Lenguaje de ensambladorLenguaje de ensamblador
Lenguaje de ensamblador
luisbeltran861
 
Compiladores diapositivas
Compiladores diapositivasCompiladores diapositivas
Compiladores diapositivas
jonathangrief
 
Lenguaje Ensamblador00
Lenguaje Ensamblador00Lenguaje Ensamblador00
Lenguaje Ensamblador00
Car_00_01
 

La actualidad más candente (20)

Lenguaje Ensamblador
Lenguaje EnsambladorLenguaje Ensamblador
Lenguaje Ensamblador
 
Ensamblador
EnsambladorEnsamblador
Ensamblador
 
Lenguaje ensamblador
Lenguaje ensambladorLenguaje ensamblador
Lenguaje ensamblador
 
Programacion ensamblador-procesadoresk
Programacion ensamblador-procesadoreskProgramacion ensamblador-procesadoresk
Programacion ensamblador-procesadoresk
 
Lenguaje ensamblador basico
Lenguaje ensamblador basicoLenguaje ensamblador basico
Lenguaje ensamblador basico
 
GRUPO 4 Elementos a traves de los lenguajes de programacion, lenguaje de maqu...
GRUPO 4 Elementos a traves de los lenguajes de programacion, lenguaje de maqu...GRUPO 4 Elementos a traves de los lenguajes de programacion, lenguaje de maqu...
GRUPO 4 Elementos a traves de los lenguajes de programacion, lenguaje de maqu...
 
LENGUAJE ENSAMBLADOR
LENGUAJE ENSAMBLADORLENGUAJE ENSAMBLADOR
LENGUAJE ENSAMBLADOR
 
Lenguaje de ensamblador
Lenguaje de ensambladorLenguaje de ensamblador
Lenguaje de ensamblador
 
Tasm
TasmTasm
Tasm
 
FUNDAMENTOS DEL LENGUAJE ENSAMBLADOR
FUNDAMENTOS DEL LENGUAJE ENSAMBLADORFUNDAMENTOS DEL LENGUAJE ENSAMBLADOR
FUNDAMENTOS DEL LENGUAJE ENSAMBLADOR
 
Lenguaje Ensamblador
Lenguaje EnsambladorLenguaje Ensamblador
Lenguaje Ensamblador
 
Lenguaje ensamblador
Lenguaje ensamblador   Lenguaje ensamblador
Lenguaje ensamblador
 
Lenguaje ensamblador y Estructura del CPU
Lenguaje ensamblador y Estructura del CPULenguaje ensamblador y Estructura del CPU
Lenguaje ensamblador y Estructura del CPU
 
Compiladores
CompiladoresCompiladores
Compiladores
 
Clase10 ejemplos asm con tasm y tlink
Clase10 ejemplos asm con tasm y tlinkClase10 ejemplos asm con tasm y tlink
Clase10 ejemplos asm con tasm y tlink
 
programacion en lenguaje ensamblador con NASM
programacion en lenguaje ensamblador con NASMprogramacion en lenguaje ensamblador con NASM
programacion en lenguaje ensamblador con NASM
 
Compiladores diapositivas
Compiladores diapositivasCompiladores diapositivas
Compiladores diapositivas
 
Lenguaje Ensamblador00
Lenguaje Ensamblador00Lenguaje Ensamblador00
Lenguaje Ensamblador00
 
Compilador e interpretador
Compilador e interpretadorCompilador e interpretador
Compilador e interpretador
 
Lenguaje maquina
Lenguaje maquinaLenguaje maquina
Lenguaje maquina
 

Destacado

Lenguaje de ensamblador daniel romo 9 a -san felipe
Lenguaje de ensamblador daniel romo 9 a -san felipeLenguaje de ensamblador daniel romo 9 a -san felipe
Lenguaje de ensamblador daniel romo 9 a -san felipe
DanielRomoDR
 
Nivel de lenguaje ensamblador
Nivel de lenguaje ensamblador Nivel de lenguaje ensamblador
Nivel de lenguaje ensamblador
evelynm10
 
Lenguaje Ensamblador
Lenguaje EnsambladorLenguaje Ensamblador
Lenguaje Ensamblador
gbermeo
 
Lengujes de 2 generacion
Lengujes de 2 generacionLengujes de 2 generacion
Lengujes de 2 generacion
Miguel Angel
 
Generalidades del lenguaje ensamblador
Generalidades del lenguaje ensambladorGeneralidades del lenguaje ensamblador
Generalidades del lenguaje ensamblador
salvaradomar
 

Destacado (20)

Tipos De Lenguajes
Tipos De LenguajesTipos De Lenguajes
Tipos De Lenguajes
 
Relatório de Gestão 2008 - Sala Verde Judith Cortesão FURG
Relatório de Gestão 2008 - Sala Verde Judith Cortesão FURGRelatório de Gestão 2008 - Sala Verde Judith Cortesão FURG
Relatório de Gestão 2008 - Sala Verde Judith Cortesão FURG
 
Ots 2014 2 a5
Ots 2014 2 a5Ots 2014 2 a5
Ots 2014 2 a5
 
Unidad 1 interfaz
Unidad 1 interfazUnidad 1 interfaz
Unidad 1 interfaz
 
Lenguaje de ensamblador daniel romo 9 a -san felipe
Lenguaje de ensamblador daniel romo 9 a -san felipeLenguaje de ensamblador daniel romo 9 a -san felipe
Lenguaje de ensamblador daniel romo 9 a -san felipe
 
Nivel de lenguaje ensamblador
Nivel de lenguaje ensamblador Nivel de lenguaje ensamblador
Nivel de lenguaje ensamblador
 
Lenguajeensamblador
LenguajeensambladorLenguajeensamblador
Lenguajeensamblador
 
Lenguaje Ensamblador
Lenguaje EnsambladorLenguaje Ensamblador
Lenguaje Ensamblador
 
Lenguaje ensamblador
Lenguaje ensambladorLenguaje ensamblador
Lenguaje ensamblador
 
Lengujes de 2 generacion
Lengujes de 2 generacionLengujes de 2 generacion
Lengujes de 2 generacion
 
Lenguaje ensamblador
Lenguaje ensambladorLenguaje ensamblador
Lenguaje ensamblador
 
programa 1 en lenguaje ensamblador
programa 1 en lenguaje ensambladorprograma 1 en lenguaje ensamblador
programa 1 en lenguaje ensamblador
 
Lenguaje de ensamblador
Lenguaje de ensambladorLenguaje de ensamblador
Lenguaje de ensamblador
 
Data segment
Data segmentData segment
Data segment
 
Lenguaje ensamblador
Lenguaje ensambladorLenguaje ensamblador
Lenguaje ensamblador
 
Manejo de archivo
Manejo de archivoManejo de archivo
Manejo de archivo
 
Emulador 8086.
Emulador 8086.Emulador 8086.
Emulador 8086.
 
Lenguaje ensamblador
Lenguaje ensambladorLenguaje ensamblador
Lenguaje ensamblador
 
Generalidades del lenguaje ensamblador
Generalidades del lenguaje ensambladorGeneralidades del lenguaje ensamblador
Generalidades del lenguaje ensamblador
 
Temario lenguaje ensamblador
Temario lenguaje ensambladorTemario lenguaje ensamblador
Temario lenguaje ensamblador
 

Similar a Mipag web

Programacion Lenguaje Assembler 25 10 07
Programacion Lenguaje Assembler 25 10 07Programacion Lenguaje Assembler 25 10 07
Programacion Lenguaje Assembler 25 10 07
Carlos Pastorino
 
Clasificacion de los
Clasificacion de losClasificacion de los
Clasificacion de los
Jose Mendez
 
Exposición ted
Exposición tedExposición ted
Exposición ted
COVAEV
 

Similar a Mipag web (20)

Clase3 guia1-introduccion-compiladores-conceptos
Clase3 guia1-introduccion-compiladores-conceptosClase3 guia1-introduccion-compiladores-conceptos
Clase3 guia1-introduccion-compiladores-conceptos
 
Lenguaje ensamblador
Lenguaje ensambladorLenguaje ensamblador
Lenguaje ensamblador
 
Introduccion
IntroduccionIntroduccion
Introduccion
 
Programacion Lenguaje Assembler 25 10 07
Programacion Lenguaje Assembler 25 10 07Programacion Lenguaje Assembler 25 10 07
Programacion Lenguaje Assembler 25 10 07
 
Lenguajes de programacion
Lenguajes de programacionLenguajes de programacion
Lenguajes de programacion
 
Consulta
ConsultaConsulta
Consulta
 
CONSULTA
CONSULTACONSULTA
CONSULTA
 
Assembler apesteguia (1)
Assembler apesteguia (1)Assembler apesteguia (1)
Assembler apesteguia (1)
 
Clasificacion de los lenguajes abel
Clasificacion de los lenguajes abelClasificacion de los lenguajes abel
Clasificacion de los lenguajes abel
 
Clasificacion de los
Clasificacion de losClasificacion de los
Clasificacion de los
 
Presentación1
Presentación1Presentación1
Presentación1
 
Presentación1
Presentación1Presentación1
Presentación1
 
Slideshard deisy
Slideshard deisySlideshard deisy
Slideshard deisy
 
00026966
0002696600026966
00026966
 
Historia de la programacion
Historia de la programacionHistoria de la programacion
Historia de la programacion
 
Software
SoftwareSoftware
Software
 
Lenguajes de desarrollo (programación)
Lenguajes de desarrollo (programación)Lenguajes de desarrollo (programación)
Lenguajes de desarrollo (programación)
 
Como programar un pic
Como programar un pic  Como programar un pic
Como programar un pic
 
Actividades ac 2 computacion mtra elisa navarro lectura
Actividades ac 2 computacion mtra elisa navarro lecturaActividades ac 2 computacion mtra elisa navarro lectura
Actividades ac 2 computacion mtra elisa navarro lectura
 
Exposición ted
Exposición tedExposición ted
Exposición ted
 

Último

NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdfNUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
UPTAIDELTACHIRA
 
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docxTALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
NadiaMartnez11
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
EliaHernndez7
 
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Fernando Solis
 
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
jlorentemartos
 

Último (20)

Sesión de clase APC: Los dos testigos.pdf
Sesión de clase APC: Los dos testigos.pdfSesión de clase APC: Los dos testigos.pdf
Sesión de clase APC: Los dos testigos.pdf
 
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdfNUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
 
activ4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdfactiv4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdf
 
Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024
 
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICABIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
 
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docxTALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
 
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxPLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
 
Sesión de clase: Fe contra todo pronóstico
Sesión de clase: Fe contra todo pronósticoSesión de clase: Fe contra todo pronóstico
Sesión de clase: Fe contra todo pronóstico
 
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptx
 
La Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración AmbientalLa Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración Ambiental
 
Infografía EE con pie del 2023 (3)-1.pdf
Infografía EE con pie del 2023 (3)-1.pdfInfografía EE con pie del 2023 (3)-1.pdf
Infografía EE con pie del 2023 (3)-1.pdf
 
Supuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docxSupuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docx
 
Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024
 
Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024
 
SESION DE PERSONAL SOCIAL. La convivencia en familia 22-04-24 -.doc
SESION DE PERSONAL SOCIAL.  La convivencia en familia 22-04-24  -.docSESION DE PERSONAL SOCIAL.  La convivencia en familia 22-04-24  -.doc
SESION DE PERSONAL SOCIAL. La convivencia en familia 22-04-24 -.doc
 
Tema 11. Dinámica de la hidrosfera 2024
Tema 11.  Dinámica de la hidrosfera 2024Tema 11.  Dinámica de la hidrosfera 2024
Tema 11. Dinámica de la hidrosfera 2024
 
FUERZA Y MOVIMIENTO ciencias cuarto basico.ppt
FUERZA Y MOVIMIENTO ciencias cuarto basico.pptFUERZA Y MOVIMIENTO ciencias cuarto basico.ppt
FUERZA Y MOVIMIENTO ciencias cuarto basico.ppt
 
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdfFeliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
 
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
 

Mipag web

  • 1. Lenguaje ensamblador Lenguaje de bajo nivel Tipos de leguaje ensamblador Cruzados Macroensamblador Ensambladores de 1 fase Ensambladores de2 faces
  • 2. Estructura 1.Librerias 2.Etiquetas 3.Inicio 4.Codigo 5.Bucle 6.Fin
  • 3. Sistemas Numéricos 10 Decimal 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 2 Binario 0, 1 16 Hexadecimal 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F
  • 4. Notación posicional En esta notación el dígito de más a la izquierda (an-1) el que “pesa” más se denomina dígito más significativo En esta notación el dígito más a la derecha (a-m), es decir, el que “pesa” menos se le llama dígito menos significativo
  • 6.
  • 9. RAM Se puede usar para leer y escribir datos en ella Contador del programa ROM Sirve para la lectura de datos solamente Puertos Sirven para la entrada o salida de datos Aumenta el contador del programa Leva las direcciones de los registros Control Convierte los datos de instrucción en código para que el procesador lo reconozca Oscilador o reloj del procesador Hace las pulsaciones para que el procesador haga operaciones Memoria principal ALU Arithmetic Logic Unit
  • 10. ¿Que es la gestión de memoria? La parte del sistema operativo que administra la memoria se llama administrador de memoria y su labor consiste llevar un registro de las partes de memoria que se estén utilizando y aquellas que no, con el fin de asignar espacio en memoria a los procesos cuando estos lo necesiten y liberándola cuando terminen.
  • 11. Direcciones lógicas y direcciones físicas El concepto de espacio de direcciones lógicas vinculado a un espacio de direcciones físicas separado es crucial para una buena gestión de memoria Dirección lógica : es la dirección que genera el proceso; también se conoce como dirección virtual
  • 12. Traducción de direcciones . Cuando un proceso es asignada al estado de ejecución, un registro base es cargado con la dirección física de inicio del proceso .Un registro limite es cargado con la dirección física final .Cuando una dirección relativa es encontrada es relacionada al registro base y comparada con el registro limite
  • 13. Registro base: determina la dirección física donde se comienza el espacio de memoria del proceso Registro limite: establece la dirección donde se determina el espacio de memoria del proceso en relación al registro base
  • 14. A QUE SE LE LLAMA PROGRAMACION DE SISTEMAS Se entiende por programación de sistemas el conjunto de programas necesario para que una computadora de una imagen coherente y monolítica ante sus usuarios. Es un área especializada dentro de las ciencias de la computación. Así, mediante la programación de sistemas, no solo se manejan las computadoras por medio del lenguaje maquina (0 y 1) sino por otros sistemas operativos, sin lo cual sería muy difícil la interacción con la maquina.
  • 15. Evolución de los Lenguajes de Programación
  • 16. PRIMERA GENERACIÓN Lo constituyen los lenguajes maquina. Estos se consideran como de bajo nivel por que no existe un programa de codificación menos complicado que el que utiliza los símbolos binarios 1 y 0. ASCII, utiliza ceros y unos para representar letras del alfabeto.
  • 17. SEGUNDA GENERACIÓN lenguaje ensamblador. Los lenguajes ensambladores usan códigos como: a para agregar subwf restara una cantidad mvc para mover btfss comparar y así sucesivamente. Los programas de software de sistemas tales como los sistemas operativos y los programas de utilidad se escriben con frecuencia en un lenguaje ensamblador.
  • 18. TERCERA GENERACIÓN Son relativamente independientes del hardware. el programa se puede utilizar en computadoras diferentes Primeros lenguajes de alto nivel Cobol(Common Business Oriented Language)1958 Algol (Algorithmic Language) 1960 Apl (A Programming Language)1961 Basic(Beginners All purpose Symbolic Instruction Code) 1964 C 1970 Pascal()
  • 19. Diferencias entre Ensamblador, Compilador e Interpretes
  • 20. Ensambladores Se llaman ensambladores los programas encargados de traducir los programas escritos en ensamblador a código binario.
  • 21. Compiladores El compilador es un programa que traduce el código de alto nivel a código binario. Es, por tanto, parecido al ensamblador, pero mucho más complejo, ya que las diferencias entre los lenguajes de alto nivel y el código binario son muy grandes.
  • 22. Intérpretes El intérprete es un programa que traduce el código de alto nivel a código binario pero, a diferencia del compilador, lo hace en tiempo de ejecución. Es decir, no se hace un proceso previo de traducción de todo el programa fuente a binario, sino que se va traduciendo y ejecutando instrucción por instrucción.
  • 23. Compiladores frente a intérpretes Un intérprete Un compilador facilita la búsqueda de errores, pues la ejecución de un programa puede interrumpirse en cualquier momento para estudiar el entorno. El programa puede modificarse sobre la marcha, sin necesidad de volver a comenzar la ejecución. permite utilizar funciones y operadores más potentes, como por ejemplo ejecutar código contenido en una variable en forma de cadenas de caracteres. suele generar programas más rápidos y eficientes, ya que el análisis del lenguaje fuente se hace una sola vez, durante la generación del programa equivalente. Cualquier lenguaje puede ser ejecutado tanto vía intérprete o vía compilador, pero algunos lenguajes suelen asociarse más a una vía que a la otra, y por esto son llamados "lenguajes interpretados" o "lenguajes compilados" respectivamente.
  • 24. LIGADORES Un ligador es un programa de sistema que combina dos o mas programas objeto separados y permite que se hagan referencias unos a otros, o sea, que cada uno de estos programas pueden hacer referencia a código ó variables de los otros programas con los que está enlazado.
  • 25. CARGADOR Un cargador es un programa que coloca en la memoria para su ejecución, el programa guardado en algún dispositivo de almacenamiento secundario. El cargador consiste en un juego de instrucciones que permiten al dispositivo de entrada ( teclado ó unidad de cinta ) asignar la dirección de inicio de la memoria y asegurar que el computador leerá el programa y lo cargara byte a byte.
  • 26. La información que hace que el hardware de la computadora realice una determinada actividad se llama instrucción Se denomina lenguaje máquina a la serie de datos que la parte física de la computadora o hardware, es capaz de interpretar. Las instrucciones así formadas equivalen a acciones elementales de la máquina Lenguaje de bajo nivel La segunda parte de la instrucción es el operando, que indica la computadora dónde hallar o almacenar los datos y otras instrucciones que se van a manipular. El lenguaje máquina de una computadora consta de cadenas de números binarios (ceros y unos) La primera es el comando u operación, que dice a la computadora cuál es la función que va a realizar.
  • 27. Apareció a principios de los 50 con el fin de facilitar la labor de los programadores Uno de los primeros pasos para mejorar el proceso de preparación de programas fue sustituir los códigos de operaciones numéricos del lenguaje de máquina por símbolos alfabéticos LENGUAJE ENSAMBLADOR se desarrollaron códigos nemotécnicos para las operaciones y direcciones simbólicas. ESTRUCTURA Bucle Librerías Inicio Código Fin Etiquetas
  • 28. Las instrucciones más importantes que podemos manejar son las que proporciona el fabricante de un microprocesador para su producto. Directriz EQU Sirve para “igualar” la posición de cualquier registro a un nombre personalizado que le hayamos dado nosotros Directriz ORG Esta directriz dice al ensamblador a partir de que posición de memoria se situarán las siguientes instrucciones. Directriz INCLUDE Esta instrucción índica qué archivos deberán tomarse en cuenta a la hora de compilar el código. Directriz END Esta debe ir incluida una sola vez en todo el programa. En concreto, esta debe situarse al final, para indicar al ensamblador que el programa ha finalizado. DIRECTRICES DEL ENSAMBLADOR Directriz LISTEste comando sirve para que el compilador tenga en cuenta sobre qué procesador se está trabajando. Este comando debe estar en todo proyecto, situado debajo del “include”, con la siguiente sintaxis.  LIST   P=16F627A Directriz #DEFINEDefine se usa para crear pequeñas macros. Con estas macros podremos poner nombres a pequeños fragmentos de código que nos facilitarán la realización y comprensión del algoritmo. Directriz TITLEEsta directriz no sirve de mucho, pero será útil para aquellos que quieran que el compilador tenga en cuenta el título que le ha puesto a su código. Directriz TITLEEsta directriz no sirve de mucho, pero será útil para aquellos que quieran que el compilador tenga en cuenta el título que le ha puesto a su código.
  • 29. Para utilizar una macro, primero hay que declararla. En la declaración se establece el nombre que se le dará a la macro y el conjunto de instrucciones que representará. El programador escribirá el nombre de la macro en cada uno de los lugares donde se requiera la aplicación de las instrucciones por ella representadas. La declaración se realiza una sola vez, pero la utilización o invocación a la macro (macro llamada) puede hacerse cuantas veces sea necesario. Con el fin de evitar al programador la tediosa repetición de partes idénticas de un programa, los ensambladores y compiladores cuentan con macro procesadores que permiten definir una abreviatura para representar una parte de un programa y utilizar esa abreviatura cuantas veces sea necesario. La utilización de macros posibilita la reducción del tamaño del código fuente, aunque el código objeto tiende a ser mayor que cuando se utilizan funciones. MACROZ EN PROGRAMACION Es tan común el empleo de macroinstrucciones que se les considera como una extensión de los lenguajes. El macro procesador se encarga, en una primera pasada, de registrar todas las declaraciones de macros y de rastrear el programa fuente para detectar todas las macro llamadas. El macro procesador elabora dos tablas para el manejo de las
  • 30. Sintaxis de una macro La declaración de la macro se lleva a cabo de la siguiente forma: NombreMacro MACRO [parametro1, parametro2...] Aunque se tiene la funcionalidad de los parametros es posible crear una macro que no los necesite. Las partes que componen a una macro son: *Declaración de la macro *código de la macro *Directiva de terminación de la macro La directiva de terminación de la macro es: ENDM Posicion MACRO Fila, ColumnaPUSH AXPUSH BXPUSH DXMOV AH, 02HMOV DH, FilaMOV DL, ColumnaMOV BH, 0INT 10HPOP DXPOP BXPOP AXENDM
  • 31.
  • 32.
  • 33. Convertir las constantes definidas en el programa en su verdadera representación.
  • 34. Procesar las directrices al ensamblador (las directrices son instrucciones o comandos dirigidos al ensamblador, que éste procesa y ejecuta al hallarlos en el programa en lenguaje de ensamblador; estas directrices no se traducen a lenguaje de máquina, si no que el ensamblador ejecuta alguna acción, como reservar memoria para variables, entre otras
  • 35. Convertir los códigos a su código equivalente en lenguaje de máquina.
  • 36.
  • 37. Macroensambladores Son ensambladores que permiten el uso de macroinstrucciones (macros). Debido a su potencia, normalmente son programas robustos que no permanecen en memoria una vez generado el programa objeto. Ensambladores de una fase. Estos ensambladores leen una línea del programa fuente y la traducen directamente para producir una instrucción en lenguaje máquina o la ejecuta si se trata de una pseudoinstrucción. También va construyendo la tabla de símbolos a medida que van apareciendo las definiciones de variables, etiquetas, etc. Ensambladores Cruzados (Cross-Assembler). Se denominan así los ensambladores que se utilizan en una computadora que posee un procesador diferente al que tendrán las computadoras donde va a ejecutarse el programa objeto producido. TIPOS DE ENSAMBLADORES Ensambladores residentes. Son aquellos que permanecen en la memoria principal de la computadora y cargan, para su ejecución, al programa objeto producido. Micro-ensambladores El programa que ayuda a realizar este microprograma se llama micro-ensamblador. Existen procesadores que permiten la modificación de sus microprogramas, para lo cual se utilizan micro-ensambladores. Ensambladores de dos fases. Los ensambladores de dos fases se denominan así debido a que realizan la traducción en dos etapas. En la primera fase, leen el programa fuente y construyen una tabla de símbolos; de esta manera, en la segunda fase, vuelven a leer el programa fuente y pueden ir traduciendo totalmente, puesto que conocen la totalidad de los símbolos utilizados y las posiciones que se les ha asignado. Estos ensambladores son los más utilizados en la actualidad.