Copy Link
Add to Bookmark
Report

4x07: Conociendo a nuestro amigo (o enemigo)

eZine's profile picture
Published in 
0ri0n Team Venezuela
 · 1 month ago

-[ 4x07.txt ]---------------------------------------------------------------- 
-[ Conociendo a nuestro amigo (o enemigo) ]-------------[ Mr. kl0nk Manson ]-
--------------------------------------------------------[ kl0nk@otv.org.ve ]-


Indice
------
* Introduccion.
* Contenido:
0. Conocimiento previo.
a.- Transformaciones
a1. Binario a Decimal.
a2. Decimal a Binario.
a3. Octal a Binario.
a4. Binario a Octal.
a5. Octal a Decimal.
a6. Decimal a Octal.
a7. Hexadecimal a Binario.
a8. Binario a Hexadecimal.
a9. Hexadecimal a Decimal.
a10. Decimal a Hexadecimal.
a11. Hexadecimal a Octal.
a12. Octal a Hexadecimal.


b.- Operaciones

Sumas:

b1.1.- Binario
b1.2.- Octal
b1.3.- Hexadecimal

Restas

b2.1.- Binario
b2.2.- Octal
b2.3.- Hexadecimal

Multiplicacion
b3.1.- Binario
b3.2.- Octal
b3.3.- Hexadecimal

Division
b4.1.- Binario
b4.2.- Octal
b4.3.- Hexadecimal


* Conclusion.


Introduccion
------------

Este paper tiene como fin explicar como hacer transformaciones en los
sistemas Binarios, Octal, Decimal y Hexadecimal, Sumas, restas,
Multipliaciones y Divisiones, ademas del sistema BCD. Este paper
tambien va dedicado a Gustavito, Gracias a su empuje pude escribir este
paper.

Saludos a los panas que estubieron comiendo HEX y otros quimicos conmigo:
LiteSYS, vbxsys, inouttime, Manuel B, Talivan.


0. Conocimiento previo.
--------------------

Para poder entender este articulo debemos saber lo siguiente:

a.- Binario: Se traduce como 2 bits, los cuales son: 0 y 1
b.- Octal: Se traduce como 8 bits que van de 0-7
c.- Decimal: Se traduce como 10 Bits que van de un rango de 0-9, donde
los numero mayores a 9 son conbinaciones de el mismo sistema.
d.- HexaDecimal: Se traduce como 16 bits los cuales tan dentro del
rango de 0-15, ademas de que:

10 es igual a la letra A
11 es igual a la letra B
12 es igual a la letra C
13 es igual a la letra D
14 es igual a la letra E
15 es igual a la letra F

Sabiendo esto, empecemos con las transformaciones ...


1. Transformacion de Binario a Decimal
-----------------------------------

Esta se hacer elevando de atras hacia adelante la cadena binaria, para ello
se utilizara la base 2 y se le sumara al siguiente bit, ejemplo:


100101100 a Decimal
-------------------

a. Se separan los Bits

1 0 0 1 0 1 1 0 0

b. Luego se elevan de atras hacia adelante, tomando en cuenta que la base
es 2 y que empieza desde el cero (0)

1x2^8 0x2^7 0x2^6 1x2^5 0x2^4 1x2^3 1x2^2 0x2^1 0x2^0

c. Ahora se hace una suma sucesiva entre ellos:

1x2^8 + 0x2^7 + 0x2^6 + 1x2^5 + 0x2^4 + 1x2^3 + 1x2^2 + 0x2^1 + 0x2^0

d. El resultado deberia ser:

256 + 32 + 8 + 4 = 300

Y con esto hemos llevado el el numero binario 100101100 al sistema decimal.


2. Transformacion de Decimal a Binario
-----------------------------------

Para esta transformacion simplemente se tomara el numero decimal y se
dividira entre 2 tantas veces hasta que su residuo sea 0. Ejemplo:


300 en Decimal a Binario
------------------------

300 / 2 = 150 (0)
150 / 2 = 75 (0)
75 / 2 = 37.5 (Tomamos el 37 lo multiplicamos por 2 y se lo restamos
al dividendo y el resto siempre debe dar 1) (1)
37 / 2 = 18.5 (Aplicamos lo mismo de lo de arriba y el resto siempre
debe dar 1) (1)
18 / 2 = 9 (0)
9 / 2 = 4.5 (Ya saben lo que deben de hacer) (1)
4 / 2 = 2 (0)
2 / 2 = (0) (1)


Las divisiones nos han arrojado los siguientes bits:

300 / 2 = (0) <-|
150 / 2 = (0) |
75 / 2 = (1) |
37 / 2 = (1) |
18 / 2 = (0) |
9 / 2 = (1) |
4 / 2 = (0) |
2 / 2 = (0) (1) -|

Ahora para ordenarlo lo tomamos de abajo hacia arriba:

1 0 0 1 0 1 1 0 0

Y ya lo hemos llevado el numero 300 que esta en decimal a binario.


3. Transformacion de Octal a Binario
---------------------------------

5432

a.- Lo separamos:

5 4 3 2


b.- Ahora lo transformamos en binario (2^3), donde tomamos 3 bits

4 2 1
--------
5 = 1 0 1
4 = 1 0 0
3 = 0 1 1
2 = 0 1 0

c.- Ahora cambiamos los numeros decimal por el resultado en binario:

101 100 011 010

y Con esto hemos conseguido obtener la transformacion de Octal a Binario.


4. Transformacion de Binario a Octal
---------------------------------

Simplemente agarramos el conjunto de bits y luego lo agrupamos de 3 en 3
de derecha a izquerda, si nos llegan a faltar bits el final de la cadena
(cuando estemos agrupando) pues lo rellenamos con tanto ceros nos haga
falta, ejemplo:


101100110010 en Binario a Octal
-------------------------------

a.- Lo separamos en grupos de 3 de izquierda a derecha:

101 100 110 010

b.- Sacamos el valor en decimal de cada uno de los grupos:

101 = 1x2^2 + 0x2^1 + 1x2^0 = 4 + 0 + 1 = 5
100 = 1x2^2 + 0x2^1 + 0x2^0 = 4 + 0 + 0 = 4
110 = 1x2^2 + 1x2^1 + 0x2^0 = 4 + 2 + 0 = 6
010 = 0x2^2 + 1x2^1 + 0x2^0 = 0 + 4 + 0 = 2

Ahora tomamos los valores de Arriba hacia Abajo:

5 4 6 2

Con esto hemos llevado el valor 101100110010 a octal.


5. Transformacion de Octal a Decimal
---------------------------------

Simplemente tomamos el numero en octal, lo separamos y lo multiplicamos
por base 8 (2^3 = 8), ejemplo:

1642 en octal a Decimal
-----------------------

a.- Lo separamos:

1 6 4 2

b.- Multiplicamos por 8 (la base) a cada uno de los numeros

1x8 6x8 4x8 2x8

c.- Ahora lo elevamos a la 0,1,2 .. N de derecha a izquierda

1x8^3 6x8^2 4x8^1 2x8^0

d.- Luego hacemos una suma sucesiva

1x8^3 + 6x8^2 + 4x8^1 + 2x8^0 = 512 + 384 + 32 + 2 = 930

Luego 930 es nuestro valor en decimal.


6. Transformacion de Decimal a Octal
---------------------------------

Para ello tomamos el numero en decimal y lo dividimos entre 8 tantas
veces sea necesario hasta que nuestro residuo nos de 0. Ejemplo:


930 en Decimal a Octal
----------------------

a.- Hacemos una division comun y corriente

930 / 8
- 8 116
---
- 13
8
---
- 50
48
---
(2)

El 2 sera uno de nuestros resultados, ahora dividimos el cociente entre 8

116 / 8
- 8 14
---
36
- 32
---
(4)

El 4 sera otro valor de nuestro resultado, de nuevo volvemos a dividir el
cociente entre 8

14 / 8
- 8 1
--
(6)

Cuando el cociente nos da 1 como resultado lo tomamos como valor, si es
cero no hay necesidad de tomarlo. Ahora agarramos de el ultimo valor
al primer valor:

1 6 4 2

Y 1642 es el equivalente en octal al 930 en decimal.


7. Transformacion de Hexadecimal a Binario
---------------------------------------

La forma mas facil de hacerlo es atravez de la tabla binaria que es la
siguiente:


8 4 2 0
-------------------
| 0 | 0 0 0 0 |
| 1 | 0 0 0 1 |
| 2 | 0 0 1 0 |
| 3 | 0 0 1 1 |
| 4 | 0 1 0 0 |
| 5 | 0 1 0 1 |
| 6 | 0 1 1 0 |
| 7 | 0 1 1 1 |
| 8 | 1 0 0 0 |
| 9 | 1 0 0 1 |
| A | 1 0 1 0 |
| B | 1 0 1 1 |
| C | 1 1 0 0 |
| D | 1 1 0 1 |
| E | 1 1 1 0 |
| F | 1 1 1 1 |
-------------------

Ejemplo: Transformar 29A en Binario

a.- Descomponemos el 29A

2 9 A

b.- Buscamos en la Tabla el Valor de 2, 9 y A

2 = 0010
9 = 1001
A = 1010

c.- Substituimos el valor HEX por el Binario

001010011010

Y hemos obtenido la transformacion


8. Transformacion de Binario a Hexadecimal
---------------------------------------

Es muy parecido a lo de arriba, ejemplo:

001010011010 a HEX

a.- Separamos en grupos de 4 de Derecha a Izquierda, si nos hace falta
rellenamos con ceros.

0010 1001 1010

b.- Buscamos el respectivo valor en la tabla binaria o por la formula de
deduccion (trabajando con base 16):

0010 = 2
1001 = 9
1010 = A

Donde nuestra transformacion da como resultado 29A


9. Transformacion de Hexadecimal a Decimal

Esta transformacion consiste en separar los digitos, multiplicarlo por 16
(2^4 = 16) y elevarlo a la 0,1,2..N de Izquierda a Derecha ademas de
sumarlos sucesivamente, ejemplo:

29A a Decimal
-------------

a.- Separamos los digitos, como sabemos A = 10, entonces:

2 9 A = 2 9 10

b.- Ahora multiplicamos cada uno de los digitos por 16

2x16 9x16 10x16

c.- Elevamos cada una de las bases a la 0,1,2..N de Izquierda a derecha y
luego sumamos sucesivamente

2x16^2 + 9x16^1 + 10x16^0 = 512 + 144 + 10 = 666

Luego 666 en decimal es equivalente a 29A en Hexadecimal.


10. Transformacion de Decimal a Hexadecimal
---------------------------------------

Esta es parecida a la transformacion de Decimal a Octal, lo unico que
cambia es que en vez de dividir entre 8 lo vamos hacer entre 16.

Ejemplo:


666 en Decimal a HEX
--------------------

a.- Hacemos una division comun y corriente pero nuestro dividendo sera
16

666 / 16
- 64 41
---
26
- 16
---
(10)


El (10) = A es uno de nuestros resultados, ahora dividimos el cociente
entre 16

41 / 16
- 32 2
--
(9)

El 9 es otro de los valores que estamos buscando, como 2 no es divisible
entre 16 entonces lo tomamos como valor final y nos quedaria:

10 9 2 , Intercambiando posiciones:

2 9 10 , donde 10 = A

29A

29A es equivalente a 666 en decimal.


11. Transformacion de Hexadecimal a Octal
-------------------------------------

Para esta transformacion hay que tener en cuenta que una es base 16 y la
otra es base 8, es decir llevarlo de 2^4 a 2^3, para ello primero hay que
llevarlo a binario el valor en HEX, luego agrupar los bits de 3 en 3 de
derecha a izquerda, claro esta que si te faltan bits para agrupar al final
de la cadena debes rellenarla con ceros. Ejemplo:

AF754.379A a Octal
------------------

a.- Llevamos AF754.379A a binario:

1010 1111 0111 0101 0100 . 0011 0111 1001 1010

b.- Agrupamos de 3 en 3 de Derecha a Izquierda

10 101 111 011 101 010 100 . 0 011 011 110 011 010

Como podemos ver, nos ha quedado 10 y 0 sin estar en grupos, para ello
simplemente le colocamos a su izquerda tanto ceros sean necesarios para
convertirlos en un grupo de 3 bits. al 10 le colocamos un cero y quedaria
como 010 y al 0 le colocamos 2 ceros a la izquerda y quedaria 000

010 101 111 011 101 010 100 . 000 011 011 110 011 010

c.- Ahora buscamos en la tabla binaria el respectivo valor decimal del
binario

4 2 0
---------------
| 0 | 0 0 0 |
| 1 | 0 0 1 |
| 2 | 0 1 0 |
| 3 | 0 1 1 |
| 4 | 1 0 0 |
| 5 | 1 0 1 |
| 6 | 1 1 0 |
| 7 | 1 1 1 |
---------------

010 = 2
101 = 5
111 = 7
011 = 3
101 = 5
010 = 2
100 = 4

. = ,

000 = 0
011 = 3
011 = 3
110 = 6
011 = 3
010 = 2

El Valor obtenido es 2573524,033632 en Octal.


12. Transformacion de Octal a Hexadecimal
-------------------------------------

Simplemente agarramos el numero en Octal, lo transformamos en binario, este
nos dara grupos de 3 pero alos agrupamos todos los bits y hacemos grupos de
4 bits, luego buscamos en la tabla su respectivo valor:

Ejemplo:


2573524,033632 a HEX
--------------------

a.- Lo transformamos a binario:


010 101 111 011 101 010 100 . 000 011 011 110 011 010


b.- Ahora los agrupamos en grupos de 4 de Derecha a Izquerda

0 1010 1111 0111 0101 0100 . 00 0011 0111 1001 1010

c.- Relenamos con ceros los que nos quedaron solitos:

0000 1010 1111 0111 0101 0100 . 0000 0011 0111 1001 1010

d.- Buscamos en la tabla binaria los respectivos valores:

0000 = 0
1010 = 10 = A
1111 = 15 = F
0111 = 7
0101 = 5
0100 = 4

, = .

0000 = 0
0011 = 3
0111 = 7
1001 = 9
1010 = 10 = A

Nos quedaria:

0AF754 . 0379A

Como el cero a la izquierda no vale pues lo quitamos, entonces nos quedaria:

AF754.379A y este es el valor en HEX.


To Be continued ...


<EOF>

← previous
next →
loading
sending ...
New to Neperos ? Sign Up for free
download Neperos App from Google Play
install Neperos as PWA

Let's discover also

Recent Articles

Recent Comments

Neperos cookies
This website uses cookies to store your preferences and improve the service. Cookies authorization will allow me and / or my partners to process personal data such as browsing behaviour.

By pressing OK you agree to the Terms of Service and acknowledge the Privacy Policy

By pressing REJECT you will be able to continue to use Neperos (like read articles or write comments) but some important cookies will not be set. This may affect certain features and functions of the platform.
OK
REJECT