elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Entrar al Canal Oficial Telegram de elhacker.net


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Convertir rango de números en binario con signo magnitud
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Convertir rango de números en binario con signo magnitud  (Leído 2,939 veces)
djmorales

Desconectado Desconectado

Mensajes: 1


Ver Perfil
Convertir rango de números en binario con signo magnitud
« en: 4 Junio 2017, 22:39 pm »

El ejercicio que quiero realizar es: Convertir el rango de números que ya halle con mi programa y convertirlos a binario y aumentarle una posición para diferenciar el signo, siendo 1=negativo y 0=positivo, espero me puedan ayudar y se los agradezco de antemano.

Pdt: Todavía soy principiante :)

Si ingreso 3 bits
x | 1 | 1
    2 + 1 = 3

(2^n)-1 = 4-1=3
-4 hasta 3

Sabemos que existe +_0 se le suma +1 al lado negativo

[-4,-3,-2,-1,0,+1,+2,+3]

AL imprime se sume una posición a la Izquierda para el signo

Imprima 1 100 -4
   -3    1 011
   -2    1 010
   -1    1 001
         0    0 000
       +1    0 001
       +2    0 010
       +3    0 011

CODIGO TEMPORAL

Código
  1. #include <iostream>
  2. #include <stdlib.h>
  3. #include <math.h>
  4. using namespace std;
  5.  
  6. int main()
  7. {
  8.  int num,rgf,rgi,contador;
  9.  
  10.  cout<<"Ingrese un numero de bits: ";
  11.  cin>>num;
  12.  
  13.  rgi=pow(2,num-1)*(-1);
  14.  rgf=pow(2,num-1)-1;
  15.  
  16.  for(contador=rgi; contador<=rgf; contador++)
  17.  {  
  18.    cout<<endl<<contador;
  19.  }
  20. }
  21.  

MOD: Titulo pasado a minusculas. Etiquetas GeSHi.


« Última modificación: 5 Junio 2017, 01:06 am por MCKSys Argentina » En línea

MAFUS


Desconectado Desconectado

Mensajes: 1.603



Ver Perfil
Re: Convertir rango de números en binario con signo magnitud
« Respuesta #1 en: 5 Junio 2017, 19:59 pm »

Tienes el operador sizeof() para conocer el tamaño de tu dato y junto con dos operadores, el de desplazamiento ( << ) y el AND a nivel de bit ( & ) tienes las herramientas necesarias para realizar tu programa.


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines