DisProgTarea02 AndoneyValdezDaniel

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 4

INSTITUTO POLITECNICO NACIONAL

UNIDAD PROFESIONAL INTERDISCIPLINARIA EN INGENIERIA


Y TECNOLGIAS AVANZADAS - IPN

MATERIA

Dispositivos Programables

ALUMNO

Andoney Valdez Daniel

TEMA
Programa en Matlab para obtener la representación en
formato Q15.16 con signo y formato IEEE-754

Grupo 4TM1/4TV1 Equipo N/A Tarea No. 2

Fecha de asignación 14/10/20


Fecha de entrega 20/10/20 21:00 hrs
Tarea 2 de dispositivos programables

Primer parcial

Instrucciones
• Crear un documento en Word
• Letra de tamaño arial de 12 puntos
• Guardar el documento en pdf. con el nombre:
DisProgTarea02_Apellido1Apellido2Nombre1Nombre2

1.Elabore un programa en Matlab que obtenga la representación binaria en punto flotante


IEEE-754 de un número.
Solución:
clear all ;
close all;
clc;

%binario en punto flotane


disp('Convertidor de decimal a binario en formato IEEE-754');
prompt = 'Ingresa un numero decimal para convertirlo a formato IEEE-754';

num = input(prompt);

entero = fix(abs(num));
bin = dec2bin(entero);
if(num<0)
decimal = abs(entero + num);
S = '1';
else
S = '0';
decimal = num-entero;
end

n=1;
res = decimal*2;

if((res - fix(res)) ~= 0)
bindec(1,n) = int2str(fix(res));
while ((res - fix(res)) ~= 0)

res= res - fix(res);


res = res *2;
n = n+1;
bindec(1,n) = int2str(fix(res));
end
elseif((decimal == 0.5))

bindec(1,n) = '1';
end
aux1 = strcat(bin,'.');
aux2 = strcat(aux1,bindec);

aux3 = fliplr(aux2);
contador = 1;
for n = 1:length(aux2)
if(~strcmp(aux2(n),'.'))
contador = contador + 1;
else
break;
end

end
contador = contador -2;

E = contador + 127;

Ebin = dec2bin(E);

for i = 1:length(aux2)
if(i == 1)
mantisa(1,i) =' ';
else
if(~strcmp(aux2(1,i),'.'))
mantisa(1,i) = aux2(1,i);
else
mantisa(1,i) = ' ';
end

end

end

n = length(mantisa) + 1;
while(length(mantisa) <25)

mantisa(1,n) = '0';
n=n+1;
end

IEEE754 = strcat(S,'_');
IEEE754 = strcat(IEEE754,Ebin);
IEEE754 = strcat(IEEE754,mantisa);
disp('El numero binario en formato IEEE-754 simple es:');
fprintf('%s\n',IEEE754);
2.Elabore un programa en Matlab que obtenga la representación binaria Q15.16 con signo de un
número:
Solución:
clear all;
close all;
prompt = 'introduce un número que convertiremos a binario en formato
Q15.16 con bit de signo';
nu= input(prompt);
char sign;

um=floor(nu);
dois= nu-um;

if(nu>=0)
sign=0;
else
sign=1;
um=um+1;
end
binint = dec2bin(abs(um),15);
sign1=int2str(sign);
dec= zeros(1,16);
dec2=zeros(1,16);
for c=1:16
dois=dois*2;
if(dois >=1)
dec(1:c)= 1;
dois=dois-1;
end
dec2(c)=dec(1,c);
end
numbin(1:33) = '0';
numbin(1) = sign1;
numbin(2:16)=binint;
numbin(17)='.';
numbin(18)=int2str(dec(1));
numbin(19)=int2str(dec(2));
numbin(20)=int2str(dec(3));
numbin(21)=int2str(dec(4));
numbin(22)=int2str(dec(5));
numbin(23)=int2str(dec(6));
numbin(24)=int2str(dec(7));
numbin(25)=int2str(dec(8));
numbin(26)=int2str(dec(9));
numbin(27)=int2str(dec(10));
numbin(28)=int2str(dec(11));
numbin(29)=int2str(dec(12));
numbin(30)=int2str(dec(13));
numbin(31)=int2str(dec(14));
numbin(32)=int2str(dec(15));
numbin(33)=int2str(dec(16));
disp('Este es tu numero en binario en formato Q15.16 con bit de signo');
disp(numbin)

También podría gustarte

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy