P1.- Para facilitar la tarea, suponemos definido en el segmento de datos lo siguiente:
|
|
- Gonzalo Villalba Agüero
- hace 7 años
- Vistas:
Transcripción
1 Problemas P1.- Para facilitar la tarea, suponemos definido en el segmento de datos lo siguiente: ascii DB 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F 7_segm DB 3fh,06h,,71h el núcleo del código sería: mov dl, al lea bx, ascii xlat ascii equivalente a "mov al, [bx+al]" mov ch, al En lugar de una lista, podríamos haber hecho (teniendo en cuenta que los códigos ASCII son consecutivos para números y letras): mov dl, al cmp al,9 ja letra or al,30h el código ASCII de 0 es 30h mov ch,al jmp fin letra: sub al,10 lo que hay que sumar al código de 'A' add al,'a' el ensamblador sustituye 'A' por 41h. fin:... ahora 7 segmento: mov al,dl lea bx, 7segm xlat 7_segem mov cl, al mov al, dl P2.- Suponemos inicializados a su valor correcto CS y DS MAX EQU 128 se sustituye en tiempo de compilación NUM_ELEM DB 128 SUM DW? MED DW? VALORES DW MAX DUP? inicio: B_SUMA: LEA SI, VALORES MOV AX, 0 MOV CL, NUM_ELEM ADD AX, [SI] ADD SI, 2 DEC CL JNZ B_SUMA MOV SUM, AX CWD MOV BX, NUM_ELEM IDIV BX MOV MED, AX 1
2 En realidad, 128=2 7. Por tanto, la división podría haberse sustituido por: OTRA: MOV CL, 7 SAR DX,1 RCR AX,1 LOOP OTRA La mayoría de las veces esta secuencia es más rápida aunque suponga la ejecución de más instrucciones. P3.- El bucle C es: for (i=99 i>=0 i--) for (j=99 j>=0 j--) for (k=99 k>=0 k--) c[i][j]= a[i][k]+b[i][k] donde int i,j,k,a[100][100], c[100][100], c[100][100] mov word ptr DGROUP:_i,99 for (j=99j>=0j--) mov word ptr DGROUP:_j,99 for (k=99k>=0k--) mov word ptr DGROUP:_k,99 c[i][j]=a[i][k]+b[i][k] mov ax,word ptr DGROUP:_i mov dx,200 imul dx mov dx,word ptr DGROUP:_k shl dx,1 add ax,dx mov bx,ax mov ax,word ptr DGROUP:_a[bx] push ax mov ax,word ptr DGROUP:_i mov dx,200 imul dx mov dx,word ptr DGROUP:_k shl dx,1 add ax,dx mov bx,ax pop ax 2
3 add ax,word ptr DGROUP:_b[bx] push ax mov ax,word ptr DGROUP:_i mov dx,200 imul dx mov dx,word ptr DGROUP:_j shl dx,1 add ax,dx mov bx,ax pop ax mov word ptr DGROUP:_c[bx],ax dec word ptr DGROUP:_k cmp word ptr DGROUP:_k,0 jge short dec word ptr DGROUP:_j cmp word ptr DGROUP:_j,0 jge short dec word ptr DGROUP:_i cmp word ptr DGROUP:_i,0 jl jmp P4.- SI ceros DI pos neg otro: mov ax, word ptr SI] cmp ax, 0 je ceros jl neg inc word ptr [di + 2] jmp fin ceros:inc word ptr [di] jmp fin neg: inc word ptr [di + 4] fin: add si, 2 loop otro 3
4 P6.- MOV WORD PTR [DI],0 inicializo a la vez paridad [DI] y checksum [DI+1]. MOV CX,8 8 elementos OTRO: MOV AL,[SI] XOR [DI],AL ADD [DI+1],AL INC SI LOOP OTRO P7.-.MODEL small.data cadena db 'el helado eel ell'.stack Cadena ASCII, contar las veces de el main: mov ax,@data mov ds,ax mov si,offset cadena mov cx,0 contador de número de veces de 'el' otro: mov al,[si] cmp al,0 código de fin de cadena je fin cmp al,'e' jne otro cmp byte ptr [si],'l' jne otro inc cx jmp short otro fin: mov ah,4ch así se termina en MS-DOS int 21h END main P8.-.MODEL small.data cont dw? message db 81 db 81 dup (?) la que sea suponemos que el primer elemento es la longitud de la cadena.stack main: mov mov ds,ax mov dx, offset message inc dx mov si,dx mov cl,[si-1] mov ch,0 mov cont,cx ordena: mov bl,1 bandera que indica si ha habido cambios dec cont se hacen cont-1 comparaciones jz ordenado 4
5 mov cx,cont mov si,dx cada pasada se hace con 1 elemento menos (los mayores quedan abajo). sigue: mov al,[si] cmp al,[si+1] jbe no_cambio xchg [si+1],al mov [si],al xor bl,bl bl=0 si ha habido cambios no_cambio: loop sigue cmp bl,0 je ordena sólo si bl=1 es que no ha habido cambios (ordenada) ordenado: mov si,dx mov cl,[si-1] xor ch,ch add si,cx cseg mov ax,4c00h int 21h ends end main P9.- STRING SUBSTRING 0 mov bl, 0 mov cx, m mov ax, SEGMENT mov ds, ax mov es, ax mov di, STRING continua: mov si, SUBSTRING otro: mov al, [di] cmp al, 0 je fin inc di cmp al, [si] jne otro push cx 5
6 push di dec di cld repe cmpsb jne distintos jmp guarda_valores distintos: pop di pop cx jmp continua guarda_valores: mov ax, RESULT mov ds, ax mov si, DIRECT mov [si], SEGMENT mov [si + 2], DI fin: mov ax, RESULT mov ds, ax mov si, DIRECT mov word ptr [si], 0 alternativa: repe cmpsb jne distintos mov bl, 1 sí aparece jmp fin distintos: pop di pop cx jmp continua fin: mov ax, RESULT mov ds, ax mov si, DIRECT cmp bl, 1 je aparece mov word ptr [si], 0 jmp final aparece: mov [si], SEGMENT mov [si + 2], DI final: P10.-.MODEL SMALL.DATA cadena db race car0 temp db 20 dup?.stack main: mov mov ds, ax mov si, cadena 6
7 mov di, temp mov bl, 1 en principio es un palíndromo otro: mov al, [si] cmp al, 0 je fin cmp al, je otro mov [di], al inc di jmp otro fin: mov si, temp dec di compara las cadenas otro2: mov al, [si] cmp al, jne sigue jmp otro2 sigue: cmp [di],al jne no_pal dec di cmp si, di jb otro2 jmp si_pal no_pal: mov bl, 0 si_pal: mov ah, 4ch int 21h end main P12.- código C de prueba #include <stdio.h> extern unsigned long fact(unsigned int n) main() { long i i=fact(10) printf("%ld", i) }.MODEL small PUBLIC _fact _fact proc near push bp mov bp,sp mov cx, [bp+4] 7
8 cmp cx,0 je hecho dec cx push cx call _fact pop cx cmp ax,0ffffh jne sigue cmp dx,0ffffh je overfl sigue: inc cx push dx mul cx push dx push ax mov ax,[bp-2] mul cx jc overfl push ax mov ax, [bp-6] mov dx, [bp-4] add dx,[bp-8] jnc retorno overfl: mov ax,0ffffh mov dx,0ffffh jmp short retorno hecho: mov dx,0 mov ax,1 retorno: mov sp,bp pop bp ret _fact endp end P13. #include <stdio.h> extern void mult32(unsigned long k,unsigned long h, unsigned long *r) unsigned long k=8,h=2 unsigned long r[1] // define una cadena de 2 long (64 bits) para que quepa el resultado main() { mult32(k,h,&r) printf("%lx %lx", r[1], r[0]) // en hex., primero parte más significativa }.MODEL small PUBLIC _mult32 _mult32 proc near push bp mov bp,sp 8
9 mov mov mov mov cx,word ptr [bp+6] bx,word ptr [bp+4] dx,word ptr [bp+10] ax,word ptr [bp+8] mul bx ax*bx=dx:ax push dx p1h push ax p1l mov ax,word ptr [bp+10] mul bx dx*bx push dxp2h push axp2l mov ax,word ptr [bp+8] mul cx ax*cx push dxp3h push axp3l mov ax,word ptr [bp+10] mul cx dx*cx push dxp4h push axp4l sumar los productos parciales, [bp+10]:[bp+8] * [bp+6]:[bp+4] p1h:p1l p2h:p2l + p3h:p3l p4h:p4l mov bx, [bp+12] mov ax, [bp-4] mov [bx], ax mov ax, [bp-2] add ax, [bp-8] adc WORD PTR [bp-6],0 suma el carry. add ax,[bp-12] Esto no genera a su vez carry mov cx,[bp-6] adc cx,[bp-10] adc WORD PTR [bp-14],0 add cx, [bp-16] mov dx,[bp-14] adc dx,0 mov [bx+2],ax mov [bx+4],cx mov [bx+6],dx mov sp,bp pop bp ret _mult32 endp end P14. void funcion(long *vector, int longitud) Cambiar el signo a los elementos de vector 9
10 Se asume longitud > 0.MODEL small PUBLIC _funcion _funcion proc near push bp mov bp,sp mov cx,[bp+6] mov bx,[bp+4] otro: not WORD PTR [bx] complemento a 2 not WORD PTR [bx+2] add WORD PTR [bx],1 adc WORD PTR [bx+2],0 add bx,4 dec cx jne otro o bien "loop otro" fin: pop bp ret _funcion endp end Si el modelo fuera large:.model large PUBLIC _funcion _funcion proc far push bp mov bp,sp mov cx,[bp+10] les bx,[bp+6]es=segmento de vector bx=desplaz. de vector otro: not WORD PTR es:[bx] not WORD PTR es:[bx+2] add WORD PTR es:[bx],1 adc WORD PTR es:[bx+2],0 add bx,4 dec cx jne otro o bien "loop otro" fin: pop bp ret _funcion endp end si los números fueran en signo magnitud (como un float, 32 bits) otro: xor BYTE PTR [bx+3],80h cambia sólo el bit más significativo add bx,4 dec cx jne otro o bien "loop otro" 10
Intel 8086 modelo básico (primera parte) Registros:
Intel 8086 modelo básico (primera parte) Registros: Uso general: AX, BX, CX, DX, SI, DI, BP. Uso con direccionamento especial: SP, IP. Registros de segmento: CS, SS, DS, ES. Modelo de los registros: 20
Más detallesIntel 8086. Arquitectura. Programación en Ensamblador Ing. Marcelo Tosini - 2001
Intel 8086 Arquitectura Características generales Procesador de 16 bits Bus de direcciones de 20 bits : 1 Mbyte Bus de datos interno de 16 bits Bus de datos externo de 16 bits en el 8086 8 bits en el 8088
Más detallesLENGUAJE ENSAMBLADOR 80386 PRÁCTICA 11 PRÁCTICA 11 CUATRO OPERACIONES FUNDAMENTALES EN NÚMEROS DE 8 BYTES
PRÁCTICA 11 SUMA, RESTA, MULTIPLICACIÓN Y DIVISIÓN DE DOS NÚMEROS ENTEROS POSITIVOS DE HASTA 20 DÍGITOS DECIMALES 1. INTRODUCCIÓN Mediante esta práctica, trabajaremos con números binarios de hasta veinte
Más detallesArquitectura de Computadores II 8086 Parte II
8086 Parte II Facultad de Ingeniería Universidad de la República Instituto de Computación Contenido Funciones recursivas Manejadores de dispositivos Rutinas recursivas(1/10) Introducción Salvar contexto.
Más detallesPregunta correcta= 0,3 Pregunta no contestada= 0 Pregunta incorrecta (tipo test)= -0,15
Pregunta correcta= 0,3 Pregunta no contestada= 0 Pregunta incorrecta (tipo test)= -0,15 Sistemas operativos, arquitectura von Neumann, configuración del PC (3 puntos) 1) Señale la opción correcta: [_]
Más detallesParámetro de entrada. Un parámetro pasado del procedimiento que hace la llamada al procedimiento invocado.
CAPITULO 12 PROCEDIMIENTOS En el capítulo 6, aprendiste como utilizar un programa con procedimientos, en este capítulo aprenderás a usar las directivas e instrucciones que definen y llamas procedimientos.
Más detallesPráctica 4. Lenguaje máquina y lenguaje ensamblador
Enunciados de prácticas Práctica 4. Lenguaje máquina y lenguaje ensamblador Estructura y Organización de Computadores Grados en Ingeniería Informática e Ingeniería de Computadores Curso 2012-2013 Práctica
Más detallesLENGUAJE ENSAMBLADOR 80386 PRÁCTICA 16 PRÁCTICA 16
PRÁCTICA 16 PROGRAMA RESIDENTE QUE PUEDE USAR FUNCIONES DE DOS PARA CAPTURAR LA SALIDA A IMPRESORA 1. INTRODUCCIÓN La práctica está dedicada a ilustrar el método para hacer programas residentes en memoria
Más detalles62/8&,21(6$/(;$0(1'( /$%25$725,2'((6758&785$6'(/26&20387$'25(6 &8562)(%5(52
62/8&,21(6$/(;$0(1'( /$%25$725,2'((6758&785$6'(/26&20387$'25(6 &8562)(%5(52 3DUWHGH(QVDPEODGRU 4º) Escribir un programa en ensamblador que pida un número de una cifra por teclado y saque como resultado
Más detallesTrabajo Práctico Nro 3: Assembler
Año 28 Banderas Nombre Estado = Estado = 1 Desbordamiento: Indica cuando el resultado de una operación con NV-No hubo OV-Desborde signo a excedido la capacidad del up. desborde Dirección: Controla la selección
Más detallesREPERTORIO DE INSTRUCCIONES DEL MICROPROCESADOR 8086
REPERTORIO DE INSTRUCCIONES DEL MICROPROCESADOR 8086 INSTRUCCIONES DE TRANSFERENCIA: NINGUNA INSTRUCCIÓN DE TRANSFERENCIA AFECTA AL REGISTRO DE ESTADO (SALVO LAS EXPLÍCITAS CON EL REGISTRO DE ESTADO) A)
Más detalles[etiqueta:] REP MOVSn
INSTRUCCIONES DE CADENA Instrucción MOVSn MOVS mueve un byte, palabra o palabra doble desde una localidad en memoria a otra. Se carga la dirección de los operandos en los registros DI (Apuntador a la cadena
Más detallesResumen de las instrucciones del 8086/8088
Resumen de las instrucciones del 8086/8088 En este capítulo se hace un resumen de las instrucciones del 8086/8088. Estas instrucciones se encuentran explicadas más detalladamente en otro capítulo. Se puede
Más detallesConceptos de Arquitectura de Computadoras Curso 2015
PRACTICA 1 Assembly, Instrucciones, Programas, Subrutinas y Simulador MSX88 Objetivos: que el alumno Domine las instrucciones básicas del lenguaje assembly del MSX88. Utilice los diferentes modos de direccionamiento.
Más detallesPráctica 2. Registros y posiciones de memoria
Enunciados de prácticas Práctica 2. Registros y posiciones de memoria Estructura y Organización de Computadores Grados en Ingeniería Informática e Ingeniería de Computadores Curso 2012-2013 Práctica 2:
Más detallesSISTEMAS BASADOS EN MICROPROCESADORES
SISTEMAS BASADOS EN MICROPROCESADORES Grado en Ingeniería Informática Escuela Politécnica Superior UAM COLECCIÓN DE PROBLEMAS DE LOS TEMAS 2.7 A 5.4 P1. Si SP=0006h y FLAGS=0210h al inicio de la ejecución
Más detallesTema 4. Lenguaje máquina y lenguaje ensamblador
Enunciados de problemas Tema 4. Lenguaje máquina y lenguaje ensamblador Estructura de Computadores I. T. Informática de Gestión / Sistemas Curso 2008-2009 Tema 4: Hoja: 2 / 28 Tema 4: Hoja: 3 / 28 Base
Más detallesFig. 1: Tipos de datos que puede manejar el procesador
1. Introducción 2. Registros internos 3. Almacenamiento de datos 4. Modos de direccionamiento 5. Juego de Instrucciones 6. Etiquetas, cometarios y directivas 7. Problemas 1. Introducción El lenguaje ensamblador
Más detallesIntroducción al ensamblador 80x86
Introducción al ensamblador 80x86 Por: Sadot Alexandres Fernández Colaboran: Carlos Rodríguez Morcillo, Javier Goyanes. Departamento de Electrónica y Automática Escuela Técnica Superior de Ingeniería Universidad
Más detallesTema 5: La pila, las macros y los procedimientos
Tema 5: La pila, las macros y los procedimientos S La pila S Las macros S Definición de procedimientos S Tipos de procedimientos: NEAR y FAR S Paso de parámetros a un procedimiento S Mediante registros
Más detallesArquitectura intel 8086. Preámbulo de OSO para alumnos formados en el procesador MIPS. Asignatura Sistemas Operativos Murcia abril de 2005
Arquitectura intel 8086 Preámbulo de OSO para alumnos formados en el procesador MIPS Asignatura Sistemas Operativos Murcia abril de 2005 página 1. Introducción 2 2.- Direccionamiento y Registros de Segmento
Más detallesSISTEMAS BASADOS EN MICROPROCESADOR 2º Grado Ingeniería Informática (EPS UAM) EXAMEN FINAL EXTRAORDINARIO JULIO 2013 ENUNCIADO DEL PROBLEMA
SISTEMAS BASADOS EN MICROPROCESADOR 2º Grado Ingeniería Informática (EPS UAM) EXAMEN FINAL EXTRAORDINARIO JULIO 2013 ENUNCIADO DEL PROBLEMA IMPLEMENTACIÓN DE UN DRIVER DOS INTERFAZ CON UN SISTEMA DE RADIO
Más detallesSISTEMAS BASADOS EN MICROPROCESADORES
SISTEMAS BASADOS EN MICROPROCESADORES Grado en Ingeniería Informática ENUNCIADO PROBLEMA 1 A continuación se incluye el código de una aplicación formada por un programa principal escrito en lenguaje C,
Más detallesEl microprocesador de 16 bits 8086
INTRODUCCIÓN El microprocesador de 16 bits 8086 En 1978 Intel sacó al mercado el 8086, con un bus de datos de 16 bits y capaz de direccionar hasta 1 Mb de memoria. La importancia del 8086 se debe a que
Más detallesInstrucción De Salto Incondicional
INSTRUCCIONES DE CONTROL DE FLUJO Los programas que se han desarrollado hasta ahora se ejecutan en forma secuencial, esto es, el programa inicia su ejecución con la primera instrucción y continúa de arriba
Más detallesMANUAL DE PROGRAMACIÓN EN ENSAMBLADOR 8086
MANUAL DE PROGRAMACIÓN EN ENSAMBLADOR 8086 ALUMNO: SANTIAGO SÁNCHEZ GONZÁLEZ TITULACIÓN: I.T.I. SISTEMAS ARQUITECTURA DE COMPUTADORES I ÍNDICE: PÁGINA Introducción al ensamblador...2 Procesos para la creación
Más detallesLENGUAJE ENSAMBLADOR DEL MICROPROCESADOR
LENGUAJE ENSAMBLADOR DEL MICROPROCESADOR. Registros Internos del Microprocesador 2. Conjunto de Instrucciones (Microprocesadores 886/888) 2. Instrucciones de Transferencia de Datos 2.2 Instrucciones de
Más detallesCAPÍTULO 3 PROGRAMACIÓN EN AMBIENTE DE PC
66 CAPÍTULO 3 PROGRAMACIÓN EN AMBIENTE DE PC 3.1 EL SISTEMA OPERATIVO El sistema operativo (SO) provee el ambiente para que otros programas se ejecuten. En las computadoras que tienen múltiples usuarios,
Más detalles2 de septiembre de 2010 Hoja: 1 / 10. Solamente existe una opción válida en las preguntas de respuesta múltiple.
2 de septiembre de 2 Hoja: / Normas del examen: Solamente existe una opción válida en las preguntas de respuesta múltiple. No se podrá emplear documentación adicional a la del examen. No se podrá emplear
Más detallesUNIVERSIDAD TECNOLÓGICA NACIONAL FACULTAD REGIONAL SAN NICOLÁS INGENIERIA EN ELECTRÓNICA
UNIVERSIDAD TECNOLÓGICA NACIONAL FACULTAD REGIONAL SAN NICOLÁS INGENIERIA EN ELECTRÓNICA TÉCNICAS DIGITALES III TRABAJO PRÁCTICO N 3 ENLACE DE RUTINAS DE ASSEMBLER EN UN LEGUAJE DE ALTO NIVEL COMO C AÑO
Más detallesMÓDULO III PROGRAMACIÓN DEL MICROPROCESADOR
85 MÓDULO III PROGRAMACIÓN DEL MICROPROCESADOR El módulo III está conformado por las unidades 7 y 8. El estudio de estas unidades, permite desarrollar en el estudiante las competencias necesarias en la
Más detallesENSAMBLADOR DE ARCHIVO TASM MASM NASM GAS. Características de un Ensamblador de Archivo
ENSAMBLADOR DE ARCHIVO TASM MASM NASM GAS Características de un Ensamblador de Archivo Traduce de Leng Ensamblador a Lenguaje máquina Permite definición de etiquetas Reserva memoria para variables octales
Más detallesAlternativas de programación
Alternativas de programación Enteramente en bajo nivel programa completo librería rutina particular Embebido en alto nivel rutinas librería 1 Alternativas de programación Enteramente en bajo nivel programa
Más detallesPRACTICA #1. Aprender a programar una interrupción software empleando C y/o Ensamblador.
PRACTICA #1 Aprender a programar una interrupción software empleando C y/o Ensamblador. Aprender a manipular dispositivos externos (8253, 8255) desde C y/o ensamblador. PROCEDIMIENTO: Vamos a programar
Más detallesApellidos Nombre DNI
A continuación se muestra el listado de un programa cuyo objetivo es encontrar una palabra dentro de una cadena de caracteres de la sección de datos y copiar dicha palabra en otra zona de la sección de
Más detallesSISTEMAS BASADOS EN MICROPROCESADORES
SISTEMAS BASADOS EN MICROPROCESADORES Grado en Ingeniería Informática Escuela Politécnica Superior UAM COLECCIÓN DE PROBLEMAS DE LOS TEMAS 5.5 A 7.2 P1. Escribir una rutina de ensamblador que se quede
Más detalles6-REGISTROS DEL 8086 Y DEL 80286
ESTRUCTURA DE COMPUTADORES I (Capítulo 6: Los registros del microprocesador 8086) 1/7 6-REGISTROS DEL 8086 Y DEL 80286 6.1 INTRODUCCIÓN: Dentro del procesador existen unos contenedores especiales de 16
Más detallesEl Diseño de un Lenguaje Máquina
Arquitectura de Ordenadores Juego de Instrucciones del Procesador Intel Pentium Abelardo Pardo abel@it.uc3m.es Universidad Carlos III de Madrid Departamento de Ingeniería Telemática El Diseño de un Lenguaje
Más detallesIniciación del mouse El servicio utilizado es el 00, este servicio inicializa el controlador del mouse como sigue:
Esta es una interrupción de DOS y ayuda a controlar el uso del mouse. Se puede establecer el uso del ratón en modo texto y en modo gráfico. Para hacer uso del mouse se debe establecer el modo de video,
Más detallesArquitectura de Computadores II Introducción al 8086
Introducción al 8086 Facultad de Ingeniería Universidad de la República Instituto de Computación Contenido Generalidades 80x86 Modos de direccionamiento Set de instrucciones Assembler Compilando algunos
Más detallesEste grupo es una continuación del anterior, incluye las siguientes instrucciones:
CONJUNTO DE INSTRUCCIONES (Microprocesadores 8086/8088) Se pueden clasificar en los siguientes grupos: Instrucciones de Transferencia de Datos. Estas instrucciones mueven datos de una parte a otra del
Más detallesDIRECTIVAS DEL ASM86
DIRECTIVAS DEL ASM86 Directiva SEGMENT / ENDS nombre SEGMENT [alineación] [combinación] [nombre_clase] PARA PUBLIC BYTE COMMON WORD STACK PAGE MEMORY INPAGE AT nombre ENDS Se usa para definir un segmento
Más detallesNombre del módulo: Instalación de Sistemas Microprocesados. Guía sobre Programación en Ensamblador usando Emulador (emu8086)
Nombre del Plantel: Conalep Tehuacán 150 Nombre del módulo: Instalación de Sistemas Microprocesados Guía sobre Programación en Ensamblador usando Emulador (emu8086) Ing. Jonathan Quiroga Tinoco Grupo:
Más detallesTema 4. Lenguaje máquina y lenguaje ensamblador
Tema 4. Lenguaje máquina y lenguaje ensamblador Estructura de Computadores I. T. Informática de Gestión / Sistemas Curso 2008-2009 Transparencia: 2 / 47 Índice Introducción Juego de instrucciones Estructura
Más detalles1.1.- SISTEMA NUMERICO BINARIO, OCTAL Y HEXADECIMAL 1
MATERIA : LENGUAJE ENSAMBLADOR INDICE REPASO DE CONCEPTOS NECESARIOS PARA LA MATERIA 1.1.- SISTEMA NUMERICO BINARIO, OCTAL Y HEXADECIMAL 1 1.1.1.- SISTEMAS NUMERICOS 1 1.1.2.- SISTEMA NUMERICO DECIMAL
Más detallesExamen de Arquitectura de Computadores 2 22 de febrero del 2011
Examen de Arquitectura de Computadores 2 22 de febrero del 2011 Indique su nombre completo y número de cédula en cada hoja. Numere todas las hojas e indique el total de hojas en la primera. Escriba las
Más detallesINSTRUCCIONES ARITMÉTICAS.
Microprocesadores. Guía 4 1 Facultad: Ingeniería. Escuela: Electrónica. Asignatura: Microprocesadores. Lugar de ejecución: Microprocesadores (Edificio 3, 2da planta). INSTRUCCIONES ARITMÉTICAS. Objetivos
Más detallesESTRUCTURA DE COMPUTADORES I (Capítulo 14: DIRECTIVAS) 1/32 14-DIRECTIVAS
ESTRUCTURA DE COMPUTADORES I (Capítulo 14: DIRECTIVAS) 1/32 14-DIRECTIVAS 14.1 INTRODUCCIÓN: Las directivas o pseudooperaciones se pueden dividir en cuatro grupos funcionales:! Directivas de datos.! Directivas
Más detallesUNIVERSIDAD NACIONAL DE INGENIERIA. Programación en Lenguaje Ensamblador
UNIVERSIDAD NACIONAL DE INGENIERIA RECINTO UNIVERSITARIO SIMON BOLIVAR Facultad de Electrotecnia y Computación Departamento de Arquitectura y Sistemas Folleto Complementario de Arquitectura de Máquinas
Más detallescontrol de Luces por el Puerto Paralelo 378H (16 Luces 4 bloques de 4)
control de Luces por el Puerto Paralelo 378H (16 Luces 4 bloques de 4) 1.- Lo primero Tenemos que tener un cuenta que el puerto paralelo tiene solo 8 salidas de datos (D7...D2) y nosotros necesitamos controlar
Más detallesSobre cómo dividir un programa ensamblador x86 (modo Real) en módulos compilables por separado.
Sobre cómo dividir un programa ensamblador x86 (modo Real) en módulos compilables por separado. Fuente de la información de partida para este documento: http://homepage.mac.com/eravila/asmix86.html PRIMERO
Más detallesPRONTUARIO I. INFORMACIÓN GENERAL
UNIVERSIDAD INTERAMERICANA DE PUERTO RICO RECINTO METROPOLITANO FACULTAD DE CIENCIAS Y TECNOLOGÍA DEPARTAMENTO DE CIENCIAS DE COMPUTADORAS Y MATEMÁTICAS PRONTUARIO I. INFORMACIÓN GENERAL Título del Curso:
Más detallesArquitectura (Procesador familia 80 x 86 )
Arquitectura (Procesador familia 80 x 86 ) Diseño de operación Basada en la arquitectura Von Newman Memoria CPU asignadas direcciones I / O BUS: Es un canal de comunicaciones Bus de direcciones: Contiene
Más detallesTema 4: Lenguaje máquina - Lenguaje ensamblador
Tema 4: Lenguaje máquina - Lenguaje ensamblador S Introducción S Modos de direccionamiento: S Juego de instrucciones: S Direccionamiento inmediato S Instrucciones de transferencia S Direccionamiento directo
Más detallesTema 3: ASCII y operaciones de desplazamiento y lógicas
Tema 3: ASCII y operaciones de desplazamiento y lógicas S Representación de cadenas de caracteres (alfanuméricas) S Operaciones de desplazamiento S Desplazamientos lógicos S Desplazamientos aritméticos
Más detallesSISTEMAS BASADOS EN MICROPROCESADORES (2º - GRADO ING. INFORMÁTICA) EJERCICIO CLASE
SISTEMAS BASADOS EN MICROPROCESADORES (2º - GRADO ING. INFORMÁTICA) EJERCICIO CLASE El fabricante de una familia de microcontroladores de pequeñas prestaciones orientados al sector automovilístico nos
Más detallesTema 5. Presentación de datos por pantalla
Tema 5. Presentación de datos por pantalla Laboratorio de Estructura de Computadores I. T. Informática de Gestión / Sistemas Curso 2008-2009 Transparencia: 2 / 24 Índice El registro de flags del i8086
Más detallesComparaciones en lenguaje ensamblador
Comparaciones en lenguaje ensamblador Objetivo: Entender cómo se realizan las comparaciones de datos en lenguaje ensamblador En lenguaje ensamblador no existe la instrucción IF como se trabaja en otros
Más detallesOrganización del Computador I 1er. Parcial 17-Mayo-2005. Turno:
Nota: En el parcial se puede tener la cartilla de Assembler y la de seguimiento (formatos de instrucción) pero no se pueden compartir. Para aprobar el parcial, son necesarios 6(seis) puntos. Para promocionar,
Más detallesESCUELA TÉCNICA SUPERIOR DE INGENIERÍA
Tema 4: Familia x86 Carlos Garre 1 Familia x86 Contenidos Concepto de familia: la familia x86. Generaciones de la familia x86. Primera generación: 8086. Segunda generación: 80286. Tercera generación: 80386.
Más detallesINEL 4206 Microprocesadores Texto: Barry B Brey, The Intel Microprocessors:
Introducción al Curso Microprocesadores INEL 4206 Microprocesadores Texto: Barry B Brey, The Intel Microprocessors: Architecture, Programming and Interfacing. 8va. Ed., Prentice Hall, 2009 Prof. José Navarro
Más detallesEnsamblador para el 80x86
Ensamblador para el 80x86 1 DESDE ARCHIVOS FUENTES HASTA EJECUTABLES 4 DECLARACION DE SEGMENTOS 4 Programas EXE 6 Programas COM 6 Declaracion Simplificada de Segmentos 8 REGISTROS DEL 80x86 12 DATOS EN
Más detallesAPÉNDICE D. Directivas, Operadores e Instrucciones del Lenguaje Ensamblador
APÉNDICE D Directivas, Operadores e Instrucciones del Lenguaje Ensamblador DIRECTIVAS (PSEUDO-OPERACIONES) Las directivas son comandos que afectan al ensamblador, y no al microprocesador, por lo que no
Más detallesBuses y Periféricos. ITIS. Ensamblador y Turbo debugger
BUSES Y PERIFÉRICOS (Práctica de introducción a ensamblador. Va acompañada del documento Ensamblador del 8086.doc. Su realización no cuenta para la nota de prácticas) Programación en ensamblador utilizando
Más detallesTema 5.1: Presentación de datos en pantalla
Tema 5.1: Presentación de datos en pantalla El registro de flags del i8086 Instrucciones de transferencia Instrucciones de transferencia de control Instrucciones aritméticas: comparación Representación
Más detallesLas instrucciones del 8088 se pueden clasificar en los siguientes grupos:
Conjunto de del 888 Las instrucciones del 888 se pueden clasificar en los siguientes grupos: Transferencia de datos Aritméticas (Entera binaria, BCD y ASCII) Operaciones Lógicas Corrimientos y Rotaciones
Más detallesDesarrollo de Programas Residentes en base a un TSR genérico
Desarrollo de Programas Residentes en base a un TSR genérico Ing. Eduardo Vega Alvarado Jefe del Departamento de Laboratorios Ligeros del CINTEC-IPN E l presente artículo inicia una serie de trabajos sobre
Más detallesPráctica 1. Introducción a la programación en ensamblador
Práctica 1 Introducción a la programación en ensamblador 1. Generalidades 2. Introducción 3. Cuestiones 1. Generalidades El desarrollo de las prácticas consistirá en una breve introducción del tema por
Más detallesEL EMU8086 Y EL MICROPROCESADOR 8086.
1 Facultad: Ingeniería. Escuela: Electrónica. Asignatura: Microprocesadores. Lugar de ejecución: Microprocesadores (Edificio 3, 2da planta). EL EMU8086 Y EL MICROPROCESADOR 8086. Objetivos específicos
Más detallesESTRUCTURA DE MICROPROCESADORES
ESTRUCTURA DE MICROPROCESADORES 8086: Instrucciones y Modos de direccionamiento Profesor Ing. Johan Carvajal Godínez JCG 2010 Agenda de la clase Definición Diseño de instrucciones 8086 Modos de direccionamiento
Más detallesREGENERACION INDIVIDUALIZADA DEL CODIGO ENCRIPTADOR
REGENERACION INDIVIDUALIZADA DEL CODIGO ENCRIPTADOR Gerardo Richarte G.I.S.V.I. (Grupo de Investigación en Seguridad y Virus Informáticos) Facultad de Ciencias Exactas y Naturales Universidad de Buenos
Más detallesInstrucciones de Control de Flujo y Usos de la Pila
1 Instrucciones de Control de Flujo y Usos de la Pila Objetivos Generales Facultad: Estudios Tecnologicos. Escuela: Electrónica Asignatura: Microprocesadores Analizar la forma en que se ejecutan algunas
Más detallesPráctica 4 - Arquitectura CPU
Práctica 4 - Arquitectura CPU Organización del Computador 1 1er. Cuatrimestre 2006 Programación en Assembler Ejercicio 1 Dados los siguientes valores de la memoria y del registro R0 de la arquitectura
Más detallesDigital II. Conceptos básicos sobre la programación en Assembler. Departamento de Sistemas e Informática. Silvina Ferradal. Escuela de Electrónica
Digital II Conceptos básicos sobre la programación en Assembler Departamento de Sistemas e Informática Escuela de Electrónica Facultad de Ciencias Exactas Ingeniería y Agrimensura Universidad Nacional
Más detallesEs importante tener esto en cuanta a la hora de acceder a los datos para operar con ellos.
1. Introducción 2. Registros internos 3. Modos de direccionamiento 4. Juego de Instrucciones 5. Etiquetas, cometarios y directivas 6. Problemas 1. Introducción El lenguaje ensamblador como cualquier lenguaje
Más detallesObjetivo. Introducción. Tema: GENERACION DE CODIGO. Compiladores, Guía 11 1
Compiladores, Guía 11 1 Tema: GENERACION DE CODIGO. Facultad : Ingeniería Escuela :Computación Asignatura:Compiladores Objetivo Reconocer las diferentes instrucciones para la generación de código.ensamblador
Más detallesTema 2. Presentación de datos por pantalla. La ROM-BIOS
Tema 2. Presentación de datos por pantalla. La ROM-BIOS Laboratorio de Estructura y Organización de Computadores Grados en Ingeniería Informática e Ingeniería de Computadores Curso 2012-2013 Tema 2: Presentación
Más detallesAPUNTES DE INTRODUCCIÓN A LA ARQUITECTURA DEL PC
APUNTES DE INTRODUCCIÓN A LA ARQUITECTURA DEL PC Andrés Azar Instituto de Ingeniería Eléctrica Facultad de Ingeniería Universidad de la República Revisión: marzo de 2010 2-2 Introducción a la arquitectura
Más detallesIntroducción al NASM. Convenciones de colores
Introducción al NASM The Netwide Assembler MIA J. Rafael Rojano C. 1 Convenciones de colores Rojo= Directivas propias del nasm sin traducción directa a ensamblador Morado= Directivas del ensamblador En
Más detallesAprendiendo Sistemas Operativos: Programación de Procesadores de Arquitectura IA-32
Aprendiendo Sistemas Operativos: Programación de Procesadores de Arquitectura IA-32 Este documento forma parte de la serie Aprendiendo Sistemas Operativos y sirve como una introducción a los aspectos básicos
Más detallesMacro posicionado de cursor PAMCUR
ESTRUCTURA DE COMPUTADORES I (Programas de ejemplo pantalla alfanumérico) 1 Macro posicionado de cursor PAMCUR ;Macro para posicionar el cursor en la página que yo le indique, si la fila o columna indicadas
Más detallesDepartamento de Sistemas e Informática
Departamento de Sistemas e Informática Programación en Assembler - Clase 1 Digital II Presentación de Docentes y Material Docentes: Ing. Andrés Capalbo Ing. Diego Alegrechi Ing. Esteban Almirón Material
Más detallesMódulo 08 Lenguaje Ensamblador
Módulo 08 Lenguaje Ensamblador Organización de Computadoras Depto. Cs. e Ing. de la Comp. Universidad Nacional del Sur Copyright Copyright 2011-2015 A. G. Stankevicius Se asegura la libertad para copiar,
Más detallesCiclos de máquina. Otro ejemplo: decremento de un registro par (donde rp = HL, DE, BC, SP) DCX rp
Ciclos de máquina Otro ejemplo: decremento de un registro par (donde rp = HL, DE, BC, SP) DCX rp Acceso a periféricos: función del pin IO/M Este μp cuenta con dos instrucciones específicas para I/O, llamadas
Más detallesMod. I, Unid. 1, Obj. 1 CRITERIO DE DOMINIO 1/1
MR. 316 Versión 1 Prueba Integral 1/5 UNIVERSIDAD NACIONAL ABIERTA VICERRECTORADO ACADÉMICO ÁREA INGENIERIA MODELO DE RESPUESTA ASIGNATURA: MICROPROCESADORES CÓDIGO: 316 MOMENTO: INTEGRAL VERSIÓN: 01 FECHA
Más detallesConmutación de Tareas
Conmutación de Tareas Conmutación de tareas Expira el tiempo de ejecución asignado por el procesador a la tarea N El procesador almacena en memoria el estado de máquina (contexto) de la tarea N. El procesador
Más detallesOrganización n del Computador. CPU (ISA) Conjunto de Instrucciones de la Arquitectura
Organización n del Computador CPU (ISA) Conjunto de Instrucciones de la Arquitectura Estructura (computadora) periféricos Computador Computador Unidad Central de Proceso CPU Sistema de interconexión Memoria
Más detallesRegistros de la CPU. IP Registro de apuntador de siguiente instrucción
Registros de la CPU La CPU tiene 14 registros internos, cada uno de 16 bits. Los primeros cuatro, AX, BX, CX, y DX son registros de uso general y también pueden ser utilizados como registros de 8 bits,
Más detallesApéndice complementario a la práctica 6 Periféricos Avanzados. EL - DISCO
Apéndice complementario a la práctica 6 Periféricos Avanzados. EL - DISCO LOS DISCOS. ESTRUCTURA FISICA. Los discos son el principal medio de almacenamiento externo de los ordenadores compatibles. Pueden
Más detallesLa arquitectura del 8086/8088
Repasamos aquí la arquitectura de un PC. Para más información sobre lo aquí expuesto se puede consultar [PA01] y los capítulos iniciales de [Tej01], [Rod00] y [Nor01]. Anatomía del PC A grandes rasgos,
Más detallesProgramas Residentes En Lenguaje Ensamblador
UNIVERSIDAD DEL VALLE DE GUATEMALA Facultad de Ingeniería Programas Residentes En Lenguaje Ensamblador Trabajo de investigación presentado por Hugo Chinchilla Luis Monteros Josué Rendón Estrada i INDICE
Más detallesIntroducción a la Computación. Capítulo 10 Repertorio de instrucciones: Características y Funciones
Introducción a la Computación Capítulo 10 Repertorio de instrucciones: Características y Funciones Que es un set de instrucciones? La colección completa de instrucciones que interpreta una CPU Código máquina
Más detalleswww.monografias.com Historia de los Microprocesadores Intel
www.monografias.com Historia de los Microprocesadores Intel Desde la aparición de los primeros microprocesadores en los inicios de la década de los setentas, todas las áreas científicas y tecnológicas
Más detallesPráctica 4. Introducción a la programación en lenguaje ensamblador
Enunciados de prácticas Práctica 4. Introducción a la programación en lenguaje ensamblador Laboratorio de Estructura de Computadores I. T. Informática de Gestión / Sistemas Curso 2008-2009 Práctica 4:
Más detallesProgramación en Lenguaje C avanzado. Universidad de Colima
Programación en Lenguaje C avanzado Universidad de Colima Colima, Col. Copyright 2001 por Rodolfo Gallardo-Rosales rodolfo@gallardo.cc http://www.gallardo.cc Programación en Lenguaje C avanzado Estado
Más detallesProgramas de ordenador (software)
Programas de ordenador (software) Jorge Juan Chico , Julián Viejo Cortés 2011, 2014, 2015 Departamento de Tecnología Electrónica Universidad de Sevilla Usted es libre
Más detallesTodos los comandos de DEBUG se invocan usando una sola letra y son los siguientes:
USO DE DEBUG Con el sistema operativo DOS (MS-DOS = Microsoft Disk Operating System) se incluye un programa para observar el comportamiento de los registros del CPU 80386. Recuérdese que los registros
Más detallesLa arquitectura CISCA
La arquitectura CISCA Miquel Albert Orenga Gerard Enrique Manonellas PID_00181526 CC-BY-SA PID_00181526 La arquitectura CISCA Los textos e imágenes publicados en esta obra están sujetos excepto que se
Más detallesRepertorio de Instrucciones del 8086/8088
Repertorio de Instrucciones del 8086/8088 A continuación se desribe el repertorio de instrucciones del 8086/8088. Estas instrucciones se encuentran más detalladas en [Rod00] y [PCG00]. AAA Ajuste ASCII
Más detalles