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

 

 


Tema destacado: Tutorial básico de Quickjs


+  Foro de elhacker.net
|-+  Foros Generales
| |-+  Dudas Generales (Moderador: engel lex)
| | |-+  Representación decimal en la computadora
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: 1 [2] Ir Abajo Respuesta Imprimir
Autor Tema: Representación decimal en la computadora  (Leído 6,044 veces)
fafafa01

Desconectado Desconectado

Mensajes: 82


Ver Perfil
Re: Representación decimal en la computadora
« Respuesta #10 en: 3 Julio 2016, 00:48 am »

muchas gracias, la ultima ¿como llegaste al 1 y el 11?


En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Representación decimal en la computadora
« Respuesta #11 en: 3 Julio 2016, 00:54 am »

lo siguiente es binario

Código:
arreglo de numeros a mostrar = vacio
mientras numero mayor o igual que 1010 entonces:
  introducir en arreglo de numeros a mostrar->numero modulo de 1010
  numero = numero / 1010
fin mientras
introducir en arreglo de numeros a mostrar->numero

el introduce los restos de la división entre 10 y el ciclo se rompe cuando la división es menor que 10, por eso lo que quedó en el numero, tambien lo meto en el arreglo... por cierto, nativamente no oma en cuenta decimales, así que lo que pase a ser decimal, simplemente se destruye (la operación se trunca, no se redondea)


« Última modificación: 3 Julio 2016, 00:56 am por engel lex » En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
Orubatosu


Desconectado Desconectado

Mensajes: 2.515


Ver Perfil WWW
Re: Representación decimal en la computadora
« Respuesta #12 en: 3 Julio 2016, 13:46 pm »

A ver, es posible que tu problema sea mas simple: Un error "de concepto"

Todos los ordenadores se basan en componentes electrónicos. Estos componentes pueden almacenar valores y trabajar con ellos, del mismo modo (a lo bruto) que hace cualquier instalación eléctrica.

Pero, la forma mas simple de almacenar un valor es hacerlo de forma binaria. Esto es "si hay voltaje es un 1, si no lo hay es un cero"

Esto es una aproximación basta y grosera, ya que en realidad hay mas refinamientos, pero básicamente ese es el principio. En un circuito electrónico trabajas en base a que haya o no voltaje en un lugar. Para extendernos mas en detalle en este concepto habría que mirar lo que sería electrónica básica, algebra booleana y cosas por el estilo. Pero en principio imagina que todo se reduce a eso. Si hay señal es "1", y si no la hay es "0"

Es posible teóricamente desde luego crear un sistema donde almacenes números entre 0 y 9 para usar el sistema decimal. En un sistema como este la ausencia de señal sería 0, 1 V sería un 1, etc... pero eso complica enormemente los sistemas (pero mucho) eso sin hablar de que se debería de hacer un sistema mucho mas preciso para que 1.5 V fuera... ¿1 o 2?.

Entraríamos ahora en problemas como cuantos valores de voltaje podemos discriminar en sistemas que trabajen a muy bajo voltaje (un procesador moderno funciona apena a 1.5 V)

Entonces, por una cuestión de conveniencia y sencillez usamos el sistema binario. Las memorias, procesadores y otros circuitos almacenan "0" y "1"

A partir de ahi, matemáticamente se puede hacer una conversión entre diferentes bases numéricas sin problemas. Es posible usar una numeración en base 2, en base 8, 10, 16 o en lo que nos apetezca (de hecho en informática se pueden usar todas esas que te indico) según nuestra conveniencia.

¿Como funciona el sistema decimal?

Pues con numeros entre 0 y 9. Son 10 dígicos, y cada lugar a la izquierda multiplica por 10 el anterior.

Es decir: 3895 es:

3 * 1000
8 * 100
9 * 10
5 * 1

Sencillo ¿no?. En cada posición a la derecha elevas la base por la posición. La que esta mas a la derecha es 1, la siguiente 10, la siguiente 100...

En binario es lo mismo, pero la progresión se basa en el 2

128, 64, 32, 16, 8, 4, 2, 1

De ese modo, el numero 10010110 se pasa a decimal multiplicando cada uno de los numeros por la cantidad correspondiente a su posición y se suma. exactamente igual que en decimal

128 * 1
64 * 0
32 * 0
16 * 1
8 * 0
4 * 1
2 * 1
1 * 0

Total: 150

Y ahora viene la parte interesante. El ordenador trabaja en binario, y los programas que se ejecutan funcionan también en ese sistema. ¿Como te da ese numero?

Porque un ordenador no "sabe" lo que es un numero. El tiene un programa que hace esa conversión y te la representa en pantalla. El sigue unos programas que hacen la conversión y manejan unos dispositivos que de acuerdo con unas tablas de códigos te muestran unos caracteres (esto de modo muy simplista)

Un ordenador al final es poco mas que una calculadora con esteroides. Se limita a almacenar valores, pedirlos, procesarlos y mostrarlos de acuerdo con los programas que almacena, y nada mas.

En línea

"When People called me freak, i close my eyes and laughed, because they are blinded to happiness"
Hideto Matsumoto 1964-1998
Páginas: 1 [2] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[Batch] Convertidor decimal a binarios y binarios a decimal bien simple
Scripting
bITEBUG 0 3,092 Último mensaje 15 Junio 2011, 06:13 am
por bITEBUG
Programa en C sharp que convierta binarios a decimal y decimal a binarios
.NET (C#, VB.NET, ASP)
david_quiroz19 0 3,382 Último mensaje 13 Noviembre 2011, 00:18 am
por david_quiroz19
Representación de un número
Java
maikmilk 6 3,886 Último mensaje 6 Junio 2012, 16:48 pm
por lluvplay
reemplazar la coma decimal por el punto decimal
Programación C/C++
niko26.m 2 4,447 Último mensaje 3 Agosto 2013, 03:06 am
por aguml
Representación de Coordenadas « 1 2 »
Programación C/C++
amchacon 15 7,019 Último mensaje 10 Abril 2014, 15:06 pm
por Eternal Idol
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines