LENGUAJE ENSAMBLADOR PRÁCTICA 11 PRÁCTICA 11 CUATRO OPERACIONES FUNDAMENTALES EN NÚMEROS DE 8 BYTES

Tamaño: px
Comenzar la demostración a partir de la página:

Download "LENGUAJE ENSAMBLADOR 80386 PRÁCTICA 11 PRÁCTICA 11 CUATRO OPERACIONES FUNDAMENTALES EN NÚMEROS DE 8 BYTES"

Transcripción

1 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 dígitos decimales y haremos las operaciones básicas de suma, resta, multiplicación y división de dos números enteros positivos, donde el primer número debe ser mayor que el segundo 2. OBJETIVOS Al término de esta práctica el alumno podrá: 2.1. Trabajar con rutinas aritméticas multidígito 2.2. Realizar operaciones básicas y exhibir el resultado 2.3. Hacer que un programa sea más robusto, es decir, que no falle. 3. DESARROLLO 3.1. Capturar los siguientes módulos con el nombre MBIN.ASM, ensamblarlo y meterlo a la librería REM. %TITLE CUATRO OPERACIONES FUNDAMENTALES EN NÚMEROS DE 8 BYTES IDEAL DOSSEG MODEL small DATASEG Ent1 DQ 0 variable para 64 bits Ent2 DQ 0 ídem Salt1 DQ 0 ídem Salt2 DQ 0,0 para 128 bits doble dd 0,0 CODESEG PUBLIC PUBLIC SumaBin,RestaBin,MultiBin,DivideBin,CompBin MbinAsc,MbinAscD,CopiaBin,EntraBin 11-1

2 SumaBin SUMA DE DOS NÚMEROS BINARIOS DE 64 BITS Entrada: SI = dirección del primer número DI = dirección del segundo número BX = dirección del resultado Salida: Resultado donde se pedía Registros: Ninguno PROC SumaBin push si di bx cx ax salva todo mov cx,4 pone número de palabras clc limpia CF mov ax,[si] trae palabra del primer número inc si apunta a siguiente palabra inc si adc ax,[di] suma palabra de segundo número inc di apunta a siguiente palabra inc di mov [bx],ax pone palabra resultante inc bx apunta a siguiente palabra in bx pop ax cx bx di si recupera orno ENDP SumaBin RestaBin RESTA DOS NÚMEROS BINARIOS DE 64 BITS Entrada: SI = dirección del primer número (sustraendo) DI = dirección del segundo número (minuendo) BX = dirección del resultado (segundo primero) Salida: Resultado en su lugar, banderas se afectan según resultado Registros: Ninguno PROC RestaBin push si di bx cx ax Salva todo mov cx,4 resta cuatro palabras clc borra préstamo mov ax,[di] trae palabra de segundo número in di apunta a siguiente palabra inc di sbb ax,[si] sustrae palabra pushf salva banderas inc si apunta a siguiente palabra inc si mov [bx],ax salva resultado inc bx apunta a siguiente palabra inc bx 11-2

3 popf loop recupera banderas pop ax cx bx di si repone ENDP RestaBin MultiBin MULTIPLICA DOS NÚMEROS BINARIOS DE 64 BITS Entrada: SI = dirección del primer factor DI = dirección del segundo factor BX = dirección para resultado Salida: Resultado de 128 bits Registros: Ninguno PROC MultiBin push si di bx cx ax salva todo Limpia área de resultado push bx salva apuntador mov x,0 pone ceros mov cx,8 es de doble precisión cld hacia delante mov [bx],ax limpia una palabra inc bx apunta a siguiente palabra inc bx 16 bytes pop bx recobra dirección mov cx,4 trae número de push cx salva contador externo mov dx,[si] trae palabra del primer factor inc si apunta a siguiente palabra inc si push bx di salva registros durante lazo interno mov cx,4 pone número de palabras pop di restaura directorio a dividendo mov si,offset Sal2 SI apunta a divisor temporal inicia contador de corrimientos mov cx,1 conteo de uno normaliza divisor test [word si+14],8000h prueba bit más significativo sale si ya normalizado call CorreI corre a la izquierda si no 11-3

4 inc cx :cuenta el corrimiento jmp sigue hasta normalizar Lazo para comparar, restar y call CompBin compara divisor contra dividendo salta si muy grande call Sustrae lo resta si cabe stc nuevo bit de cociente es uno salta a fin de call CorreCoc mete bit en el cociente nuevo bit de cociente es cero call CorreD corre divisor lógicamente pop ax cx bx di si recobra ENDP DivideBin PROC CorreI push si cx salva registros mov cx,8 pone contador clc limpia CF rcl [word si],1 corre una palabra un bit inc si apunta a siguiente palabra inc si hace todo el divisor pop cx si repone ENDP CorreI PROC CorreCoc push bx cx salva registros mov cx,4 precisión sencilla rcl [word bx],1 corre palabra de cociente una vez inc bx apunta a siguiente palabra inc bx pop cx bx restaura ENDP CorreCoc Rutina local para corregir el divisor lógicamente a la derecha PROC CorreD push si cx salva registros 11-4

5 add si,14 apunta a final de divisor temporal mov cx,8 para doble precisión clc limpia CF rcr [word si],1 rota una palabra a la vez dec si apunta a siguiente palabra dec si para todo el divisor pop cx si repone ENDP CorreD Rutina local para sustraer el divisor corrido del dividendo PROC Sustrae push si di cx salva todo clc limpia acarreo final mov cx,8 resta ocho palabras mov ax,[si] trae palabra del divisor inc si apunta a siguiente palabra inc si sbb [di],ax sustrae de palabra de dividendo inc di apunta a siguiente palabra inc di pop cx di si recupera ENDP Sustrae CompBin COMPARA DOS NÚMEROS BINARIOS DE 128 BITS Entrada: SI apunta a NUM1, DI apunta a NUM2 Salida: Registro de banderas se afecta según comparación: CMP, NUM1, NUM2 Registros: Banderas PROC CompBin push si di cx salva std add si,14 apunta al final add di,14 ídem mov cx,8 hasta ocho palabras compara más significativo primero repz cmpsw compara palabra a palabra ENDP pop cx di si repone CompBin 11-5

6 CopiaBin COPIA UN NÚMERO BINARIO DE 64 BITS Entrada: SI apunta a NUM1, DI apunta a NUM2 Salida: Registro de banderas se afecta según comparación: CMP, NUM1, NUM2 Registros: Banderas PROC CopiaBin push si di cx cld mov cx,4 salva copia hacia delante rep movsw compara palabra a palabra pop cx di si repone P386N MBinAsc Entrada: Salida: Registros: CONVIERTE UN NÚMERO BINARIO DE 64 BITS ASCII SI apunta a NUM1, DI apunta a cadena ASCIIZ La cadena ASCIIZ se llena de caracteres ASCII según número Ninguno PROC MBinAsc push ax bx cx dx si di salva Limpia la cadena mov al,30h ceros mov cx,20 conteo de 20 mov [di],al pone nulo inc di apunta a siguiente byte cmp [dword si+4],10 puede usar DIV? si, brinca Lazo push si salva dirección del binario Divide por 10 mov ebx,0 bandera a cero mov cx,2 cuatro palabras en número mov edx,0 inicializa residuo add si,4 apunta a final del push cx salva contador mov eax,[si] trae 16b bits mov ecx,10 divisor de 10 div ecx divide 11-6

7 mov [si[,eax regresa 16 bits or ebx,eax verifica si cero sub si,4 apunta a siguiente palabra pop cx repone contador mov [di],dl trae dígito de residuo add [byte di], 0 lo hace ASCII dec di apunta a siguiente carácter pop si restaura dirección de binario cmp ebx,0 fue número cero? repite si no pop di si dx cx bx ax recupera ENDP MBinAsc Efectúa división mediante corrimientos.. GranDiv: mov cx,64 xor eax,eax mov ebx,10 shift: call Corre96 cmo eax,ebx jb aunno sub aunno add [word si] aunno: loop shift mov [di],al add [byte di], 0 lo hace ASCII dec di apunta a siguiente carácter pop si restaura dirección de binario cmp [dword si+4],0 fue número cero? jnz GranDiv repite si no cmp [dword si],0 jnz GranDiv pop di si dx cx bx ax recupera PROC shl rcl rcl ENDP Corre96 [dword si] [dword si+4 eax,1 Corre

8 MBinAscD Entrada: Salida: Registros: CONVIERTE UN NÚMERO BINARIO DE 128 BITS A ASCII SI apunta a NUM1, DI apunta a cadena ASCIIZ La cadena ASCIIZ se llena de caracteres ASCII según número Ninguno PROC MBinAscD push ax bx cx dx si di salva Limpia la cadena mov al,30h ceros mov cx,33 conteo de 33 mov [di[,al pone nulo inc di apunta a siguiente byte Lazo push si salva dirección del binario Divide por 10 mov bx,0 bandera a cero mov cx,8 ocho palabras en número mov dx,0 inicializa residuo add si,14 apunta a final del push cx salva contador mov ax,[si] trae 16 bits mov cx,10 divisor de 10 div cx divide mov [si],ax regresa 16 bits or bx,ax verifica si es cero sub si,2 apunta a siguiente palabra pop cx repone contador mov [di],di lo hace ASCII dec di apunta a siguiente carácter pop si restaura dirección de binario cmp bx,0 fue número cero? repite si no pop di si dx cx bx ax recupera ENDP MBinAscD 11-8

9 EntraBin Entrada: Salida: Registros: ENTRA UN NÚMERO BINARIO DADO EN DECIMAL HASTA DE 18 DÍGITOS SI = dirección del número Dato donde se pedía Ninguno PROC EntraBin push ax bx cx di salva registros call dec64 mete número decimal mov [si],ebx lo salva mov [si+4],edx pop di cx bx ax recobra ENDP EntraBin Dec64 Entrada: Salida: Registros: RECIBE DESDE EL TECLADO UN NÚMERO DECIMAL Y REGRESA 64 BITS Ninguna Binario de 64 bits en DX:BX Ninguno PROC Dec64 push ax cx salva registros xor ebx,ebx limpia EBX mov edx,ebx y EDX mov ah,1 mete carácter del teclado int 21h con DOS sub al,30h resta 0 salir si no es dígito decimal cmp al,9 salir si no es dígito decimal call near ptr mten multiplica por 10 res previa and eax,offh. Para sumar 32 bits add ebx,eax suma dígito adc edx,0 por si es muy pop cx ax recobra multiplica por 10 cantidad de 64 bits mten: shl ebx,1 por 2 rcl edx,1 mov [dword doble],ebx salva por 2 mov [dword doble+4],edx shl ebx,1 por 4 rcl edx,1 shl ebx,1 por 8 rcl edx,1 add ebx,[dword doble] por

10 adc ENDP END edx,[dword doble+4] Dec64 fin de módulo MBIN.ASM 3.2. Capturar el programa ABIN.ASM, ensamblarlo y crear el programa ejecutable. %TITLE SUMA, RESTA, MULTIPLICA Y DIVIDE NÚMEROS BINARIOS P386N IDEAL DOSSEG MODEL SNACK small Programa ABIN.ASM que hace aritmética binaria. Ensamblarlo con TASM /zi ABIN ligarlo con: TLINK /v ABIN,,,REM rc EQU 13 ASCII de orno de carro nl EQU 10 ASCII de nueva línea DATASEG clavefin DB 0 saludos DB Este programa encuentra la suma, la resta, el producto, DB el cociente entero y,rc,nl DB su residuo de dos números decimales enteros, teclear DB primeroel mayor de ellos.,rc,nl,0 RepCPU DB El programa requiere por lo menos un 80386,rc,nl,0 fuente DQ bytes para binario destino DQ ídem para destino suma DQ 0 suma en BCD resta DQ 0 resta en BCD multi DQ 2 dup (0) ResSuma DB 22 dup (0) resultado de la suma ResResta DB 22 dup (0) resultado de resta CadSuma DB La suma es..:,0 CadResta DB La resta es...:,0 Apr1er DB Teclear primero número decimal :,0 Apr2do DB Teclear segundo número decimal :.0 ResMulti DB 35 dup (0) CadMulti DB El producto es.:,0 dividendo DQ 0 divisor DQ 0 cociente DQ 0 CadCociente DB El cociente es.:,0 ResCociente DB 22 dup (0) CadResiduo DB El residuo es.:,0 ResResiduo DB 22 dup (0) 11-10

11 CODESEG EXTRN EXTRN EXTRN Sumaban:proc,Restaban:proc,MBinASC:proc SacaCadena:proc,NuevaLinea:proc,cpul:proc CopiaBin:proc,DivideBin:proc,MBinAscD:proc,EntraBin:proc Inicia: mov mov ds,ax inicia DS mov es,ax call NuevaLinea salta línea call cpul indaga tipo de CPU cmp ax,386h por lo menos un jae mov di,offset RepCPU call SacaCadena avisa que saldrá mov ah,4ch función de DOS int 21h para salir mov di,offset saludo bienvenida e instrucciones call SacaCadena mov di,offset Apr1er pide número mayor call SacaCadena mov si,offset fuente apunta a buffer de número mayor call EntraBin recibe los dígitos call NuevaLinea salta línea mov di,offset Apr2do repite para segundo número call SacaCadena mov si,offset destino call EntraBin recibe los dígitos call NuevaLinea salta línea realiza la operación de suma.. mov eax,[dword destino] trae 32 bits add eax,[dword fuente] y los suma mov [dword suma],eax salva parte baja mov eax,[dword destino+4] trae 32 bits adc eax,[dword fuente+4] los suma con CF mov [dword suma+4] salva mov di,offset ResSuma apunta a cadena ASCIIZ mov si,offset Suma apunta a suma en binario call MBinASC convierte a ASCII mov di,offset CadSuma exhibe letrero de resultado call SacaCadena de suma mov di,offset ResSuma exhibe dígitos de suma call PoneBlancos elimina algunos ceros call SacaCadena realiza la resta.. call NuevaLinea salta línea 11-11

12 mov eax,[dword fuente] trae 32 bits sub eax,[dword destino] resta 32 bits mov [dword resta],eax salva parte baja mov eax,[dword fuente+4] trae 32 bits altos sbb eax,[dword destino+4 resta 32 bits mov [dword resta+4] salva mov di,offset ResResta apunta a cadena ASCIIZ mov si,offset Resta apunta a resta en binario call MBinASC convierte a ASCII mov di,offset CadResta exhibe letrero de resultado call SacaCadena de resta mov di,offset RestaBin exhibe dígitos de resta call PoneBlancos omite algunos ceros call SacaCadena exhibe resta producto.. call NuevaLinea Salta línea mov si,offset fuente apunta a fuente (mayor) mov bx,offset multi multi es nuevo destino mov di,offset destino apunta a número menor call MultiBin multiplica binarios mov di,offset ResMulti apunta a cadena ASCIIZ mov si,offset multi apunta a producto en binario call MBinAscD convierte a ASCII mov di,offset CadMulti exhibe letrero de resultados call SacaCadena de multiplicación mov di,offset ResMulti exhibe dígitos de producto call PoneBlancos omite ceros delanteros call SacaCadena exhibe producto división divi: call NuevaLinea salta línea mov di,offset fuente apunta a fuente (dividendo) mov bx,offset cociente resultado en cociente mov si,offset destino apunta a número divisor call DivideBin divide binarios mov di,offset ResCociente apunta a cadena ASCIIZ mov si,offset Cociente apunta a cociente en binario call MbinAsc convierte a ASCII mov di,offset CadCociente exhibe letrero de resultado call SacaCadena de división mov di,offset ResCociente exhibe dígitos de producto call PoneBlancos omite ceros delanteros call SacaCadena exhibe cociente call NuevaLinea mov di,offset ResResiduo para poner ASCII del residuo mov si,offset fuente apunta a residuo en binario call MbinAsc convierte a ASCII mov di,offset CadResiduo exhibe letrero de resultado call SacaCadena de división (residuo) 11-12

13 mov di,offset ResResiduo exhibe dígitos de residuo call PoneBlancos omite ceros delanteros call SacaCadena exhibe residuo mov ah,4ch fin de programa con función de DOS mov al,[clacefin] int 21h PoneBlancos PONE HASTA DIEZ ESPACIOS EN CERO DELANTEROS Entrada: DI = dirección de cadena ASCIIZ con resultados Salida: Aumenta a DI el número de ceros delanteros Registros: Ninguno PROC PoneBlancos push cx,ax salva registros mov cx,10 pone 10 espacios máximo mov al, ASCII de espacio mov bx,0 cld cmp [byte,di], 0 ceros a espacios stob pone en pop ax cx repone registros ENDP PoneBlancos MultBin MULTIPLICA DOS NÚMEROS SIN SIGNO DE 64 BITS Entrada: DI = dirección del primer factor, SI = dirección del segundo factor BX = dirección de resultado de 128 bits Salida: Área de salida con el resultado Registros: Ninguno PROC MultiBin mov [dword bx+12] limpia resultado mov [dword bx +8],0 mov eax,[dword si] trae 32 bits bajos mult [dword di] multiplica por bits bajos mov [dword bx],eax llena parte baja mov [dword bx+4].edx mov eax,[dword si] trae 32 bits bajos mul [dword di+4] multiplica por bits altos add [dword bx+4],eax suma en área de resultados adc [dword bx+8],edx mov eax,[dword si+4] trae 32 bits altos mul [dword di] multiplica por bits bajos add [dword bx+4],eax suma 11-13

14 adc [dword bx+8],edx suma con CF mov eax,[dword si+4] trae 32 bits altos mul [dword di+4] por 32 bits bajos add [dword bx+8] suma adc [dword bx+12],edx suma con acarreo ENDP MultiBin END Inicia fin de módulo ABIN.ASM 3.3. Ejecutar el programa: C:\>ABIN (Se muestran cuatro corridas) C:\SEM386>abin Este programa encuentra la suma, la resta, el producto, el cociente entero y su residuo de dos números decimales enteros. Teclear primero el mayor de ellos. Teclear primer número decimal : Teclear segundo número decimal: 63 La suma es..: La resta es : El producto es: El cociente es.: El residuo es : C:\SEM386> C:\SEM386>abin Este programa encuentra la suma, la resta, el producto, el cociente entero y su residuo de dos números decimales enteros. Teclear primero el mayor de ellos. Teclear primer número decimal : Teclear segundo número decimal: La suma es..: La resta es : El producto es: El cociente es.: El residuo es : C:\SEM386> C:\SEM386>abin Este programa encuentra la suma, la resta, el producto, el cociente entero y su residuo de dos números decimales enteros. Teclear primero el mayor de ellos. Teclear primer número decimal : Teclear segundo número decimal: La suma es..: La resta es : El producto es: El cociente es.: El residuo es : C:\SEM386> 11-14

15 C:\SEM386>abin Este programa encuentra la suma, la resta, el producto, el cociente entero y su residuo de dos números decimales enteros. Teclear primero el mayor de ellos. Teclear primer número decimal : Teclear segundo número decimal: La suma es..: La resta es : El producto es: El cociente es.: El residuo es : C:\SEM386> 3.4. Este programa se puede depurar con turbo debugger mediante el siguiente comando: C>TD ABIN.EXE Ejecutar paso a paso las rutinas Dec64 y MBinASC y estudiar cómo trabajan 3.5. Poner los registros en 32 bits y visualizar las variables fuente y destino, en decimal. 4. TAREAS 4.1. Introducir al programa el procedimiento Confirma y llamarlo para verificar la opción de realizar otro cálculo. 2 n n 2 0 = n n = = = = = = = = = = = = = = = = Verificar los valores de la tabla dada corriendo ABIN

16 4.3. Agregar al programa la capacidad de recibir los dos números en la línea de comandos En el módulo MBIN.ASM añadir una rutina para recibir números decimales enteros negativos y otra para recibir enteros decimales de hasta 32 bits Hacer que el programa ABIN elimine todos los ceros delanteros al desplegar los resultados

PRÁCTICA 3 OPERACIONES BÁSICAS CON DOS NÚMEROS BCD ENTEROS POSITIVOS 1. INTRODUCCIÓN 2. OBJETIVOS 3. DESARROLLO

PRÁCTICA 3 OPERACIONES BÁSICAS CON DOS NÚMEROS BCD ENTEROS POSITIVOS 1. INTRODUCCIÓN 2. OBJETIVOS 3. DESARROLLO PRÁCTICA 3 OPERACIONES BÁSICAS CON DOS NÚMEROS BCD ENTEROS POSITIVOS 1. INTRODUCCIÓN Mediante esta práctica trabajaremos con números BCD de hasta veinte dígitos y haremos las operaciones básicas, suma,

Más detalles

CON LOS VALORES ASCII

CON LOS VALORES ASCII PRÁCTICA 6 FAMILIARIZARSE CON LOS VALORES ASCII DE TODAS LAS FUNCIONES DEL TECLADO. INTRODUCCIÓN La práctica siguiente está enfocada a que el alumno se familiarice con los valores ASCII de todas las funciones

Más detalles

62/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 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 detalles

LENGUAJE ENSAMBLADOR PRÁCTICA 12 PRÁCTICA 12

LENGUAJE ENSAMBLADOR PRÁCTICA 12 PRÁCTICA 12 PRÁCTICA 12 EJECUCIÓN DE UN PROGRAMA HIJO DESDE UN PROGRAMA PADRE 1. INTRODUCCIÓN En esta práctica veremos como se puede ejecutar un programa cualquiera desde nuestro programa mediante la función EXEC

Más detalles

Pregunta 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 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 detalles

LENGUAJE ENSAMBLADOR 80386 PRÁCTICA 16 PRÁCTICA 16

LENGUAJE 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 detalles

Práctica 2. Registros y posiciones de memoria

Prá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 detalles

PRÁCTICA 7 MOUSE, EFECTOS SONOROS Y PROGRAMA QUE INFORMA DEL MICROPROCESADOR INSTALADO 1. INTRODUCCIÓN 2. OBJETIVOS 3 DESARROLLO

PRÁCTICA 7 MOUSE, EFECTOS SONOROS Y PROGRAMA QUE INFORMA DEL MICROPROCESADOR INSTALADO 1. INTRODUCCIÓN 2. OBJETIVOS 3 DESARROLLO PRÁCTICA 7 MOUSE, EFECTOS SONOROS Y PROGRAMA QUE INFORMA DEL MICROESADOR INSTALADO 1. INTRODUCCIÓN Esta práctica ayudará a familiarizarse con el MOUSE y las ventajas que se pueden tener del mismo, así

Más detalles

PRÁCTICA 4 GENERACIÓN DE SONIDOS DE DIFERENTES FRECUENCIAS 1. INTRODUCCIÓN 2. OBJETIVOS 3 DESARROLLO %TITLE IDEAL DOSSEG DATASEG

PRÁCTICA 4 GENERACIÓN DE SONIDOS DE DIFERENTES FRECUENCIAS 1. INTRODUCCIÓN 2. OBJETIVOS 3 DESARROLLO %TITLE IDEAL DOSSEG DATASEG PRÁCTICA 4 GENERACIÓN DE SONIDOS DE DIFERENTES FRECUENCIAS 1. INTRODUCCIÓN Esta práctica está centrada a los sonidos que se pueden emitir en una computadora a través de un programa en LENGUAJE ENSAMBLADOR.

Más detalles

UNIDAD 2 Configuración y operación de un sistema de cómputo Representación de datos Conceptos El concepto de bit (abreviatura de binary digit) es fundamental para el almacenamiento de datos Puede representarse

Más detalles

P1.- Para facilitar la tarea, suponemos definido en el segmento de datos lo siguiente:

P1.- Para facilitar la tarea, suponemos definido en el segmento de datos lo siguiente: 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

Más detalles

Instrucciones del microprocesador

Instrucciones del microprocesador Instrucciones del microprocesador Formato de las Instrucciones Las líneas de instrucciones se integran de 4 campos. [Identificador]: Se utiliza par etiquetar a las intrucciones donde se realizara el salto,nombre

Más detalles

Intel 8086. Arquitectura. Programación en Ensamblador Ing. Marcelo Tosini - 2001

Intel 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 detalles

LENGUAJE ENSAMBLADOR PRÁCTICA 10 PRÁCTICA 10

LENGUAJE ENSAMBLADOR PRÁCTICA 10 PRÁCTICA 10 PRÁCTICA 10 USO DE MENÚS PARA MODIFICAR ARCHIVOS DE CONFIGURACIÓN 1 INTRODUCCIÓN Esta práctica ayudará a familiarizarse con el uso de menús, para modificar archivos de configuración. La implementación

Más detalles

INSTRUCCIONES ARITMÉTICAS.

INSTRUCCIONES 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 detalles

Ejemplo del uso de las subrutinas

Ejemplo del uso de las subrutinas Ejemplo del uso de las subrutinas Enunciado del problema: Diseñar un contador BCD que cuente de 0 a 59 para simular un timer de 60 segundos y que el conteo de dos dígitos BCD, sea desplegado en los displays

Más detalles

SISTEMAS 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 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 detalles

Introducción al NASM. Convenciones de colores

Introducció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 detalles

Operaciones Aritméticas en Números con Signo

Operaciones Aritméticas en Números con Signo Operaciones Aritméticas en Números con Signo M. en C. Erika Vilches Parte 3 Multiplicación sin Signo Reglas básicas para multiplicar bits: 0x0 = 0 0x1 = 0 1x0 = 0 1x1 = 1 Ejemplos en números sin signo:

Más detalles

Matemáticas para la Computación

Matemáticas para la Computación Matemáticas para la Computación José Alfredo Jiménez Murillo 2da Edición Inicio Índice Capítulo 1. Sistemas numéricos. Capítulo 2. Métodos de conteo. Capítulo 3. Conjuntos. Capítulo 4. Lógica Matemática.

Más detalles

Arquitectura de Computadores II 8086 Parte II

Arquitectura 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 detalles

Parámetro de entrada. Un parámetro pasado del procedimiento que hace la llamada al procedimiento invocado.

Pará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 detalles

Los números naturales y enteros en el 80X86 y en LAN

Los números naturales y enteros en el 80X86 y en LAN Los números naturales y enteros en el 80X86 y en LAN 1. Los números naturales en el 80X86/TASM Representación Sistema de representación En el 80X86 (y en la mayoría de los procesadores), los números naturales

Más detalles

6-REGISTROS DEL 8086 Y DEL 80286

6-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 detalles

CAPITULO II SISTEMAS DE NUMERACIÓN Y CÓDIGOS

CAPITULO II SISTEMAS DE NUMERACIÓN Y CÓDIGOS SISTEMA DE NUMERACIÓN Y CÓDIGOS CAPITULO II SISTEMAS DE NUMERACIÓN Y CÓDIGOS CÓDIGO Un código es un grupo de símbolos que representan algún tipo de información reconocible. En los sistemas digitales, los

Más detalles

Organización del Computador I 1er. Parcial 17-Mayo-2005. Turno:

Organizació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 detalles

Resumen de las instrucciones del 8086/8088

Resumen 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 detalles

PRACTICA #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. 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 detalles

Electrónica Digital I (ED21) Sesión: 3 Aritmética Binaria. Ing. José C. Benítez P.

Electrónica Digital I (ED21) Sesión: 3 Aritmética Binaria. Ing. José C. Benítez P. Electrónica Digital I (ED21) Sesión: 3 Aritmética Binaria Ing. José C. Benítez P. Sesión 3. Temas Aritmética Binaria Números Binarios Conversión de fracciones decimales a binario Conversión de fracciones

Más detalles

LENGUAJE ENSAMBLADOR PRÁCTICA 1 PRÁCTICA 1 PROGRAMA PARA EXHIBIR EN PANTALLA EL CÓDIGO DE BARRIDO DE LA TECLA OPRIMIDA

LENGUAJE ENSAMBLADOR PRÁCTICA 1 PRÁCTICA 1 PROGRAMA PARA EXHIBIR EN PANTALLA EL CÓDIGO DE BARRIDO DE LA TECLA OPRIMIDA PRÁCTICA 1 PROGRAMA PARA EXHIBIR EN PANTALLA EL CÓDIGO DE BARRIDO DE LA TECLA OPRIMIDA 1. INTRODUCCIÓN Mediante el desarrollo de esta práctica se realizará un programa que exhiba en pantalla el código

Más detalles

Nibble Sirve para representar números hexadecimales. ( 0-9 A F) Sirve para representar números BCD (0...9)

Nibble Sirve para representar números hexadecimales. ( 0-9 A F) Sirve para representar números BCD (0...9) Formatos Binarios (80x86 ) 8 bits x 7 x 6 x 5 x 4 x 3 x 2 x 1 x 0 2 7 2 6 2 5 2 4 2 3 2 2 2 1 2 0 Alta orden ó más significativo significativo baja orden ó menos 16 bits x 15 x 14 x 13 x 12 x 11 x 10 x

Más detalles

ITT-327-T Microprocesadores

ITT-327-T Microprocesadores ITT-327-T Microprocesadores Lenguaje de Programación Ensamblador. Set de Instrucciones del 8088/8086. El set de instrucciones de un microprocesador define las operaciones básicas que el programador puede

Más detalles

Intel 8086 modelo básico (primera parte) Registros:

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 detalles

[etiqueta:] REP MOVSn

[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 detalles

CONJUNTO DE INSTRUCCIONES µp8086

CONJUNTO DE INSTRUCCIONES µp8086 CONJUNTO DE INSTRUCCIONES µp8086 Se llama INSTRUCCIÓN a las palabras reservadas ó MNEMÓNICOS en ensamblador, los cuales se traducen a lenguaje máquina para su posterior ejecución por parte de la CPU. Existen

Más detalles

Examen de Arquitectura de Computadores 2 22 de febrero del 2011

Examen 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 detalles

Unidad II: Programación básica

Unidad II: Programación básica Unidad II: Programación básica 2.1 Ensamblador (y ligador) a utilizar Aunque todos los ensambladores realizan básicamente las mismas tareas, podemos clasificarlos de acuerdo a características. Así podemos

Más detalles

Tema 2. Diseño del repertorio de instrucciones

Tema 2. Diseño del repertorio de instrucciones Soluciones a los problemas impares Tema 2. Diseño del repertorio de instrucciones Arquitectura de Computadores Curso 2009-2010 Tema 2: Hoja: 2 / 16 Tema 2: Hoja: 3 / 16 Base teórica Al diseñar un computador,

Más detalles

Alternativas de programación

Alternativas 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 detalles

Guía 01: Sistemas Numéricos

Guía 01: Sistemas Numéricos Guía 01: Sistemas Numéricos 1.1.- Sistemas Numéricos, bases 2, 10 y 16 En los sistemas numéricos posicionales un número se expresa como los dígitos del sistema multiplicados por la base de dicho sistema

Más detalles

Práctica 4. Introducción a la programación en lenguaje ensamblador

Prá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 detalles

"Programación en Ensamblador del microprocesador Pentium (I)"

Programación en Ensamblador del microprocesador Pentium (I) PRÁCTICA 3 "Programación en Ensamblador del microprocesador Pentium (I)" ÍNDICE 3.1.- El microprocesador Pentium. 3.2.- Inserción de ensamblador en Visual Studio. 3.3.- Facilidades para la depuración de

Más detalles

Computación I Representación Interna Curso 2011

Computación I Representación Interna Curso 2011 Computación I Representación Interna Curso 2011 Facultad de Ingeniería Universidad de la República Temario Representación de Números Enteros Representación de Punto Fijo Enteros sin signo Binarios puros

Más detalles

Examen Parcial de Arquitectura de Computadoras Prof: Ing. José ESTRADA MONTES

Examen Parcial de Arquitectura de Computadoras Prof: Ing. José ESTRADA MONTES Examen Parcial de Arquitectura de Computadoras Prof: Ing José ESTRADA MONTES 1- Diseñe un sistema de control de un motor de paso ( hardware y software ) a través de una computadora y una tarjeta de interfase

Más detalles

Trabajo Práctico Nro 3: Assembler

Trabajo 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 detalles

Conceptos de Arquitectura de Computadoras Curso 2015

Conceptos 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 detalles

Materia Introducción a la Informática

Materia Introducción a la Informática Materia Introducción a la Informática Unidad 1 Sistema de Numeración Ejercitación Prof. Alejandro Bompensieri Introducción a la Informática - CPU Ejercitación Sistemas de Numeración 1. Pasar a base 10

Más detalles

Apellidos Nombre DNI

Apellidos 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 detalles

ANEXO 2: REPRESENTACION DE LA INFORMACION EN LOS COMPUTADORES

ANEXO 2: REPRESENTACION DE LA INFORMACION EN LOS COMPUTADORES ANEXO 2: REPRESENTACION DE LA INFORMACION EN LOS COMPUTADORES SISTEMA DE NUMERACIÓN BASE 2 El sistema de numeración binario es el conjunto de elementos {0, 1} con las operaciones aritméticas (suma, resta,

Más detalles

REPERTORIO DE INSTRUCCIONES DEL MICROPROCESADOR 8086

REPERTORIO 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

Examen de Laboratorio de Estructura de Computadores I.T. Informática de Gestión / Sistemas. 16 de junio de 2010 Departamento de Automática ATC

Examen de Laboratorio de Estructura de Computadores I.T. Informática de Gestión / Sistemas. 16 de junio de 2010 Departamento de Automática ATC ExamendeLaboratoriodeEstructuradeComputadores I.T.InformáticadeGestión/Sistemas.16dejuniode2010 DepartamentodeAutomática ATC Test (3 puntos) Pregunta correcta = 0,30 Pregunta no contestada = 0 Pregunta

Más detalles

Fig. 1: Tipos de datos que puede manejar el procesador

Fig. 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 detalles

Sistemas Digitales Ingeniería Técnica en Informática de Sistemas Curso 2006 2007 Aritmética binaria

Sistemas Digitales Ingeniería Técnica en Informática de Sistemas Curso 2006 2007 Aritmética binaria Oliverio J. Santana Jaria 3. Aritmética tica binaria Sistemas Digitales Ingeniería Técnica en Informática de Sistemas Curso 2006 2007 Para Los La en conocer muchos aritmética comprender otros binaria tipos

Más detalles

SISTEMAS Y CÓDIGOS DE NUMERACIÓN

SISTEMAS Y CÓDIGOS DE NUMERACIÓN INTRODUCCIÓN SISTEMAS Y CÓDIGOS DE NUMERACIÓN Una señal analógica es aquella que puede tomar infinitos valores para representar la información. En cambio, en una señal digital se utiliza sólo un número

Más detalles

ESTRUCTURA Y ORGANIZACIÓN DE COMPUTADORES

ESTRUCTURA Y ORGANIZACIÓN DE COMPUTADORES Instrucciones del 8088/8086. Instrucciones de trasferencia de datos. MOV MOV destino, origen Transfiere un byte o una palabra desde el operando origen al operando destino. PUSH PUSH origen Decrementa el

Más detalles

(2) Unidad 2. Modelo de Programación del 80x86 de Intel SISTEMAS BASADOS EN MICROPROCESADORES. Grado en Ingeniería Informática EPS - UAM

(2) Unidad 2. Modelo de Programación del 80x86 de Intel SISTEMAS BASADOS EN MICROPROCESADORES. Grado en Ingeniería Informática EPS - UAM (2) Unidad 2 Modelo de Programación del 80x86 de Intel SISTEMAS BASADOS EN MICROPROCESADORES Grado en Ingeniería Informática EPS - UAM (2) Índice 2. Modelo de programación del 80x86 de Intel. 2.1. Familia

Más detalles

Control de Inventarios SisMod

Control de Inventarios SisMod Control de Inventarios SisMod Para conocer y trabajar con la aplicación de SisMod en el modulo de control de inventarios, debemos realizar los siguientes pasos: Ejecutar la aplicación SisMod, dando doble

Más detalles

MANUAL DE PROGRAMACIÓN EN ENSAMBLADOR 8086

MANUAL 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 detalles

EL GRADO Y LOS ELEMENTOS QUE FORMAN UN POLINOMIO

EL GRADO Y LOS ELEMENTOS QUE FORMAN UN POLINOMIO RECONOCER OBJETIVO EL GRADO Y LOS ELEMENTOS QUE ORMAN UN POLINOMIO NOMBRE: CURSO: ECHA: Un polinomio es una expresión algebraica formada por la suma algebraica de monomios, que son los términos del polinomio.

Más detalles

❷ Aritmética Binaria Entera

❷ Aritmética Binaria Entera ❷ Una de las principales aplicaciones de la electrónica digital es el diseño de dispositivos capaces de efectuar cálculos aritméticos, ya sea como principal objetivo (calculadoras, computadoras, máquinas

Más detalles

Generación de código para funciones. Generación de código para funciones. Generación de código para funciones. Generación de código para funciones

Generación de código para funciones. Generación de código para funciones. Generación de código para funciones. Generación de código para funciones Ejemplo introductorio: escritura de funciones en NASM Ejemplo introductorio: escritura de funciones en NASM En estas transparencias pondremos una subrutina ASPLE y la generación de código equivalente En

Más detalles

Tema 2: Programación de PLCs

Tema 2: Programación de PLCs Tema 2: Programación de PLCs 1. STEP 7 2. PROGRAMACIÓN BÁSICA AWL Introducción Operaciones lógicas a nivel de bit Marcas Simbólicos Flancos Temporizadores Diagnosis e información del sistema Contadores

Más detalles

MÓDULO III PROGRAMACIÓN DEL MICROPROCESADOR

MÓ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 detalles

Tema 1. Fundamentos del lenguaje ensamblador

Tema 1. Fundamentos del lenguaje ensamblador Tema 1. Fundamentos del lenguaje ensamblador Laboratorio de Estructura y Organización de Computadores Grados en Ingeniería Informática e Ingeniería de Computadores Curso 2012-2013 Índice Estructura del

Más detalles

Arquitectura 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 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 detalles

CONJUNTO DE INSTRUCCIONES Microprocesador 8086

CONJUNTO DE INSTRUCCIONES Microprocesador 8086 CONJUNTO DE INSTRUCCIONES Microprocesador 8086 Clasificación: TRANSFERENCIA DE DATOS ARITMÉTICAS LÓGICAS TRANSFERENCIA DE CONTROL MANEJO DE CADENAS CONTROL DE MAQUINA ENTRADA/SALIDA El formato general

Más detalles

Tema 4. Lenguaje máquina y lenguaje ensamblador

Tema 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 detalles

Sistemas de Numeración Operaciones - Códigos

Sistemas de Numeración Operaciones - Códigos Sistemas de Numeración Operaciones - Códigos Tema 2 1. Sistema decimal 2. Sistema binario 3. Sistema hexadecimal 4. Sistema octal 5. Conversión decimal binario 6. Aritmética binaria 7. Complemento a la

Más detalles

Operación de Microsoft Word

Operación de Microsoft Word Trabajar con tablas Las tablas permiten organizar la información y crear atractivos diseños de página con columnas paralelas de texto y gráficos. Las tablas pueden utilizarse para alinear números en columnas

Más detalles

Capítulo 4 Procesos con estructuras de repetición

Capítulo 4 Procesos con estructuras de repetición Estructura de contador Capítulo 4 Procesos con estructuras de repetición Esta es una operación que incrementa en una unidad el valor almacenado en la variable c, cada vez que el flujo del diagrama pasa

Más detalles

ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA

ESCUELA 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 detalles

Introducción a la Programación 11 O. Humberto Cervantes Maceda

Introducción a la Programación 11 O. Humberto Cervantes Maceda Introducción a la Programación 11 O Humberto Cervantes Maceda Recordando En la sesión anterior vimos que la información almacenada en la memoria, y por lo tanto aquella que procesa la unidad central de

Más detalles

Instrucción De Salto Incondicional

Instrucció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 detalles

3.2 Operaciones aritmético-lógicas en Pascal

3.2 Operaciones aritmético-lógicas en Pascal 3.2 Operaciones aritmético-lógicas en Pascal Operadores Los operadores sirven para combinar los términos de las expresiones. En Pascal, se manejan tres grupos de operadores : 1. ARITMÉTICOS 2. RELACIONALES

Más detalles

Conmutación de Tareas

Conmutació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 detalles

TEMA II: REPRESENTACIÓN DE LA INFORMACIÓN

TEMA II: REPRESENTACIÓN DE LA INFORMACIÓN TEMA II: REPRESENTACIÓN DE LA INFORMACIÓN 2.1. Introducción. El computador procesa información. Para que un ordenador ejecute unos datos es necesario darle dos tipos de información: las instrucciones que

Más detalles

Universidad Nacional de Ingeniería Arquitectura de Maquinas I. Unidad II: Arquitectura y Programacion de un Microprocesador (80X86)

Universidad Nacional de Ingeniería Arquitectura de Maquinas I. Unidad II: Arquitectura y Programacion de un Microprocesador (80X86) Universidad Nacional de Ingeniería Arquitectura de Maquinas I Unidad II: Arquitectura y Programacion de un Microprocesador (80X86) Arq. de Computadora I Ing. Carlos Ortega H. 1 Interrupciones FUNCIÓN INT

Más detalles

Examen de teoría (5 puntos)

Examen de teoría (5 puntos) Examen de Estructura de Computadores. Septiembre de 25 Bien: Mal: No contestadas: Examen de teoría (5 puntos) El examen constará de dos partes: El examen tendrá una duración total de 2 horas. La nota final

Más detalles

EXPRESIONES ALGEBRAICAS. POLINOMIOS

EXPRESIONES ALGEBRAICAS. POLINOMIOS EXPRESIONES ALGEBRAICAS. POLINOMIOS 1. EXPRESIONES ALGEBRAICAS. Estas expresiones del área son expresiones algebraicas, ya que además de números aparecen letras. Son también expresiones algebraicas: bac,

Más detalles

SISTEMAS BASADOS EN MICROPROCESADORES

SISTEMAS 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 detalles

Comparativas del número de ciclos de ejecución de un programa en ensamblador

Comparativas del número de ciclos de ejecución de un programa en ensamblador Trabajo evaluable 1 Comparativas del número de ciclos de ejecución de un programa en ensamblador Arquitectura de Computadores I I. T. Informática de Sistemas Curso 2009-2010 Trabajo evaluable 1: Hoja:

Más detalles

"Binary Diffing" visual en Linux con Radare2 "UNA IMAGEN DICEN MÁS QUE MIL PALABRAS"

Binary Diffing visual en Linux con Radare2 UNA IMAGEN DICEN MÁS QUE MIL PALABRAS "Binary Diffing" visual en Linux con Radare2 Binary Diffing o simplemente Bindiffing es una técnica utilizada para la visualización de código (mayormente en ensamblador) y así detectar patrones de conducta,

Más detalles

LENGUAJE ENSAMBLADOR PRÁCTICA 8 PRÁCTICA 8 COMUNICACIÓN SERIAL DE UNA PC

LENGUAJE ENSAMBLADOR PRÁCTICA 8 PRÁCTICA 8 COMUNICACIÓN SERIAL DE UNA PC PRÁCTICA 8 COMUNICACIÓN SERIAL DE UNA PC 1. INTRODUCCIÓN Esta práctica está enfocada a la comunicación serial de un PC, interceptando la interrupción de uno de los puertos 2 OBJETIVOS 2.1 El alumno aprenderá

Más detalles

Instructivo de Microsoft Excel 2003

Instructivo de Microsoft Excel 2003 Instructivo de Microsoft Excel 2003 El presente instructivo corresponde a una guía básica para el manejo del programa y la adquisición de conceptos en relación a este utilitario. Que es Microsoft Excel?

Más detalles

LENGUAJE ENSAMBLADOR PRÁCTICA 15 PRÁCTICA 15 ENCRIPTADO DE ARCHIVOS, CLASIFICACIÓN POR MÉTODO DE PARTICIÓN / INTERCAMBIO

LENGUAJE ENSAMBLADOR PRÁCTICA 15 PRÁCTICA 15 ENCRIPTADO DE ARCHIVOS, CLASIFICACIÓN POR MÉTODO DE PARTICIÓN / INTERCAMBIO PRÁCTICA 15 ENCRIPTADO DE ARCHIVOS, CLASIFICACIÓN POR MÉTODO DE PARTICIÓN / INTERCAMBIO 1. INTRODUCCIÓN Esta práctica ayudará a familiarizarse con el encriptado de archivos y las ventajas que se pueden

Más detalles

EJEMPLOS EJERCICIOS RESUELTOS MOV CX,320*200 ; ESTA OPERACIÓN LA REALIZA EL ENSAMBLADOR XOR DI,DI CLD REP STOSB

EJEMPLOS EJERCICIOS RESUELTOS MOV CX,320*200 ; ESTA OPERACIÓN LA REALIZA EL ENSAMBLADOR XOR DI,DI CLD REP STOSB EJEMPLOS Y EJERCICIOS RESUELTOS Ejemplo: el siguiente código borra la pantalla (estableciendo el color 0 a todos los pixels): MOV MOV AX,0A000H ES,AX MOV CX,320*200 ; ESTA OPERACIÓN LA REALIZA EL ENSAMBLADOR

Más detalles

Sistemas de numeración y aritmética binaria

Sistemas de numeración y aritmética binaria Sistemas de numeración y aritmética binaria Héctor Antonio Villa Martínez Programa de Ciencias de la Computación Universidad de Sonora Este reporte consta de tres secciones. Primero, la Sección 1 presenta

Más detalles

MONITOR DE PESO CALIBRADO POR PESO CONOCIDO Y POR SENSIBILIDAD CONOCIDA MS 3.3.2

MONITOR DE PESO CALIBRADO POR PESO CONOCIDO Y POR SENSIBILIDAD CONOCIDA MS 3.3.2 MONITOR DE PESO CALIBRADO POR PESO CONOCIDO Y POR SENSIBILIDAD CONOCIDA MS 3.3.2 1 CONEXIONADO DEL EQUIPO: 2 3 El menú principal consta de las siguientes opciones: 1.- CALIBRACIÓN 2.- RELÉS 3.- SALIDA

Más detalles

FORMATO BINARIO DE NÚMEROS NEGATIVOS

FORMATO BINARIO DE NÚMEROS NEGATIVOS FORMATO BINARIO DE NÚMEROS NEGATIVOS Introducción: Como sabemos, con un número n determinado de bits se pueden manejar 2 n números binarios distintos. Hasta ahora hemos trabajado con números binarios puros,

Más detalles

OBJETIVOS CONTENIDOS PROCEDIMIENTOS

OBJETIVOS CONTENIDOS PROCEDIMIENTOS 82652 _ 0275-0286.qxd 27/4/07 1:20 Página 275 Polinomios INTRODUCCIÓN Son múltiples los contextos en los que aparecen los polinomios: fórmulas económicas, químicas, físicas, de ahí la importancia de comprender

Más detalles

Entorno de Ejecución del Procesador Intel Pentium

Entorno de Ejecución del Procesador Intel Pentium Arquitectura de Ordenadores Arquitectura del Procesador Intel Pentium Abelardo Pardo abel@it.uc3m.es Universidad Carlos III de Madrid Departamento de Ingeniería Telemática Entorno de Ejecución del Procesador

Más detalles

Examen de Laboratorio de Estructura de Computadores Septiembre 2005 I.T. Informática de Sistemas / Gestión Departamento de Automática ATC -

Examen de Laboratorio de Estructura de Computadores Septiembre 2005 I.T. Informática de Sistemas / Gestión Departamento de Automática ATC - Test (3 puntos) Pregunta correcta= 0,3 Pregunta no contestada= 0 Pregunta incorrecta (tipo test)= -0,15 1) Cual de las siguientes afirmaciones es correcta? [_] a) En lenguaje máquina se representan las

Más detalles

21/02/2012. Agenda. Unidad Central de Procesamiento (CPU)

21/02/2012. Agenda. Unidad Central de Procesamiento (CPU) Agenda 0 Tipos de datos 0 Sistemas numéricos 0 Conversión de bases 0 Números racionales o Decimales 0 Representación en signo-magnitud 0 Representación en complemento Unidad Central de Procesamiento (CPU)

Más detalles

Unidad I. 1.1 Sistemas numéricos (Binario, Octal, Decimal, Hexadecimal)

Unidad I. 1.1 Sistemas numéricos (Binario, Octal, Decimal, Hexadecimal) Unidad I Sistemas numéricos 1.1 Sistemas numéricos (Binario, Octal, Decimal, Hexadecimal) Los computadores manipulan y almacenan los datos usando interruptores electrónicos que están ENCENDIDOS o APAGADOS.

Más detalles

Capítulo 0. Introducción.

Capítulo 0. Introducción. Capítulo 0. Introducción. Bueno, por fin está aquí el esperado (espero!!) Capítulo Cero del Tutorial de Assembler. En él estableceremos algunos conceptos que nos serán de utilidad a lo largo del Tutorial.

Más detalles

UD 1. Representación de la información

UD 1. Representación de la información UD 1. Representación de la información 1.1 INTRODUCCION... 1 1.2 SISTEMAS DE REPRESENTACIÓN... 2 1.2.1 El Sistema Decimal.... 2 1.2.2 Teorema Fundamental de la Numeración. (TFN)... 2 1.2.3 El Sistema Binario....

Más detalles

Sistemas numéricos. Aurelio Sanabria Taller de programación

Sistemas numéricos. Aurelio Sanabria Taller de programación Sistemas numéricos Aurelio Sanabria Taller de programación II semestre, 2015 Sistemas numéricos Son un conjunto de reglas y símbolos que permiten construir representaciones numéricas. Los símbolos son

Más detalles

Polinomios y fracciones algebraicas

Polinomios y fracciones algebraicas 829566 _ 0249-008.qxd 27/6/08 09:21 Página 27 Polinomios y fracciones algebraicas INTRODUCCIÓN Son múltiples los contextos en los que aparecen los polinomios: fórmulas económicas, químicas, físicas, de

Más detalles