Académique Documents
Professionnel Documents
Culture Documents
Historia
En 1605 Francis Bacón habló de un sistema por el cual las letras del alfabeto podrían reducirse
a secuencias de dígitos binarios, las cuales podrían ser codificadas como variaciones apenas
visibles en la fuente de cualquier texto arbitrario.
El sistema binario moderno fue documentado en su totalidad por Leibniz, en el siglo XVII, en su
artículo "Explication de l'Arithmétique Binaire". En él se mencionan los símbolos binarios usados
por matemáticos chinos. Leibniz utilizó el 0 y el 1, al igual que el sistema de numeración binario
actual. En 1854, el matemático británico George Boole publicó un artículo que marcó un antes y
un después, detallando un sistema de lógica que terminaría denominándose Álgebra de Boole.
Dicho sistema desempeñaría un papel fundamental en el desarrollo del sistema binario actual,
particularmente en el desarrollo de circuitos electrónicos.
Aplicaciones
Un número binario puede ser representado por cualquier secuencia de bits (dígitos binarios),
que suelen representar cualquier mecanismo capaz de usar dos estados mutuamente
excluyentes. Las siguientes secuencias de símbolos podrían ser interpretadas como el mismo
valor numérico binario:
1010011011
¦ −¦ −−¦ ¦ −¦ ¦
xoxooxxoxx
ynynnyynyy
El valor numérico representado en cada caso depende del valor asignado a cada símbolo. En
una computadora, los valores numéricos pueden representar dos voltajes diferentes; también
pueden indicar polaridades magnéticas sobre un disco magnético. Un "positivo", "sí", o "sobre el
estado" no es necesariamente el equivalente al valor numérico de uno; esto depende de la
nomenclatura usada. De acuerdo con la representación más habitual, que es usando números
arábigos, los números binarios comúnmente son escritos usando los símbolos 0 y 1. Los
números binarios se escriben a menudo con subíndices, prefijos o sufijos para indicar su base.
Las notaciones siguientes son equivalentes:
El sistema de numeración binario utiliza sólo dos dígitos, el cero (0) y el uno (1). En una cifra
binaria, cada dígito tiene distinto valor dependiendo de la posición que ocupe. El valor de cada
posición es el de una potencia de base 2, elevada a un exponente igual a la posición del dígito
menos uno. Se puede observar que, tal y como ocurría con el sistema decimal, la base de la
potencia coincide con la cantidad de dígitos utilizados (2) para representar los números.
Actualmente la mayoría de las personas utilizamos el sistema decimal (de 10 dígitos) para
realizar operaciones matemáticas. Este sistema se basa en la combinación de 10 dígitos (del 0
al 9). Construimos números con 10 dígitos y por eso decimos que su base es 10.
Excepto en ciertas culturas, es el sistema usado habitualmente en todo el mundo y en todas las
áreas que requieren de un sistema de numeración. Sin embargo hay ciertas técnicas, como por
ejemplo en la informática, donde se utilizan sistemas de numeración adaptados al método
del binario o el hexadecimal. Al ser posicional, el sistema decimal es un sistema de numeración
en el cual el valor de cada dígito depende de su posición dentro del número. Al primero
corresponde el lugar de las unidades, el dígito se multiplica por (es decir 1); el siguiente
las decenas (se multiplica por 10); centenas (se multiplica por 100); etc. Según
los antropólogos, el origen del sistema decimal está en los diez dedos que tienen los hombres
en las manos que siempre han servido como base para contar.
También existen algunos vestigios del uso de otros sistemas de numeración, como el quinario,
el duodecimal y el vigesimal.
Cronología
Año Acontecimiento
Los egipcios utilizan un sistema decimal no posicional.
III milenio
a.C. Otras culturas de Mesopotamia (Sumeria, Babilonia, ...) utilizaban un sistema
posicional sexagesimal.
Antes de
Los chinos.
1350
hacia -600 Los etruscos
hacia -500 Registros en sánscrito.
La civilización maya
Esta ley de tricotomía aparece en todo sistema de notación posicional en base entera n, e
incluso se puede generalizar a bases irracionales, como la base áurea. Cada diez unidades de
un orden forman una unidad del orden inmediato superior.
Clases y Órdenes
Las cifras se agrupan en órdenes y cada tres órdenes forman una clase.
MILLONES MILES UNIDADES
9º 8º 7º 6º 5º 4º 3º 2º 1º
Centena Decena Unidad
Centena Decena Unidad
de de de Centena Decena Unidad
de mil de mil de mil
millón millón millón
Para expresar los números empleamos una serie de símbolos y unas normas para leerlos, a
eso lo llamamos sistema de numeración. En nuestro sistema de numeración empleamos diez
cifras diferentes para expresar los valores. Es un sistema posicional porque el valor de una cifra
depende de su posición, cada puesto más avanzado hacia la izquierda en que esté una cifra su
valor es diez veces más.
En un número natural identificamos sus cifras desde la derecha:
Unidades, vale el valor que representa,
Decenas, vale 10 veces su valor,
Centenas, vale 100 veces su valor,
Unidades de millar, vale 1000 veces su valor,
Decenas de millar, vale 10000 veces su valor,
Centenas de millar, vale 100000 veces su valor,
Unidades de millón, vale 1000000 veces su valor,
Decenas de millón, vale 10000000 veces su valor,
Centenas de millón, vale 100000000 veces su valor.
Se debe notar que A = 10, B = 11, C = 12, D = 13, E = 14 y F = 15. En ocasiones se emplean
letras minúsculas en lugar de mayúsculas. Como en cualquier sistema de numeración
posicional, el valor numérico de cada dígito es alterado dependiendo de su posición en la
cadena de dígitos, quedando multiplicado por una cierta potencia de la base del sistema, que
en este caso es 16. Por ejemplo: 3E0A16 = 3×163 + E×162 + 0×161 + A×160 = 3×4096 + 14×256
+ 0×16 + 10×1 = 15882.
El sistema hexadecimal actual fue introducido en el ámbito de la computación por primera vez
por IBM en 1963. Una representación anterior, con 0–9 y u–z, fue usada en 1956 por la
computadora Bendix G-15. En el sistema hexadecimal los números se representan con
dieciséis símbolos: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E y F. Se utilizan los caracteres A, B, C,
D, E y F representando las cantidades decimales 10, 11, 12, 13, 14 y 15 respectivamente,
porque no hay dígitos mayores que 9 en el sistema decimal. El valor de cada uno de estos
símbolos depende, como es lógico, de su posición, que se calcula mediante potencias de base
16.
El sistema numérico en base 8 se llama octal y utiliza los dígitos del 0 al 7. En informática a
veces se utiliza la numeración octal en vez de la hexadecimal. Tiene la ventaja de que no
requiere utilizar otros símbolos diferentes de los dígitos. Sin embargo, para trabajar con bytes o
conjuntos de ellos, asumiendo que un byte es una palabra de 8 bits, suele ser más cómodo
el sistema hexadecimal, por cuanto todo byte así definido es completamente representable por
dos dígitos hexadecimales. El sistema de numeración octal es un sistema de numeración en
base 8, una base que es potencia exacta de 2 o de la numeración binaria. Esta característica
hace que la conversión a binario o viceversa sea bastante simple. El sistema octal usa 8 dígitos
(0, 1, 2, 3, 4, 5, 6, 7) y tienen el mismo valor que en el sistema de numeración decimal.
El teorema fundamental aplicado al sistema octal sería el siguiente:
Como el sistema de numeración octal usa la notación posicional entonces para el número
3452,32 tenemos que: 2*80 + 5*81 + 4*82 + 3*83 + 3*8-1 + 2*8-2 = 2 + 40 + 4*64 + 3*512 +
3*0,125 + 2*0,015625 = 2 + 40 + 256 + 1536 + 0,375 + 0,03125 = 1834 + 0,40625d
Entonces, 3452,32q = 1834,40625d El sub índice "q" indica número octal, se usa la letra q para
evitar confusión entre la letra 'o' y el número 0. En informática, a veces se utiliza la numeración
octal en vez de la hexadecimal. Tiene la ventaja de que no requiere utilizar otros símbolos
diferentes de los dígitos. Es posible que la numeración octal se usara en el pasado en lugar del
decimal, por ejemplo, para contar los espacios interdigitales o los dedos distintos de los
pulgares.
Es utilizado como una forma abreviada de representar números binarios que emplean
caracteres de seis bits. Cada tres bits (medio carácter) es convertido en un único dígito octal
(del griego oktō 'ocho') Esto es muy importante por eso. Representar un número en Sistema
Binario puede ser bastante difícil de leer, así que se creó el sistema octal. En el Sistema de
Numeración Octal (base 8), sólo se utilizan 8 cifras (0, 1, 2, 3, 4, 5, 6, 7) Este Sistema de
numeración una vez que se llega a la cuenta 7 se pasa a 10, etc... La cuenta hecha en octal: 0,
1, 2, 3, 4, 5, 6, 7, 10, 11, 12, 13, 14, 15, 16, 17, 20, 21, ...
CÓDIGO ASCII
ASCII (acrónimo inglés de American Standard Code for Information Interchange — Código
Estándar Estadounidense para el Intercambio de Información), pronunciado
generalmente [áski] o [ásci] , es un código basado en el alfabeto latino, tal como se usa en
inglés moderno. Fue creado en1963 por el Comité Estadounidense de Estándares (ASA,
conocido desde 1969 como el Instituto Estadounidense de Estándares Nacionales, o ANSI)
como una refundición o evolución de los conjuntos de códigos utilizados entonces en telegrafía.
Más tarde, en 1967, se incluyeron las minúsculas, y se redefinieron algunos códigos de control
para formar el código conocido como US-ASCII. El código ASCII utiliza 7 bits para representar
los caracteres, aunque inicialmente empleaba un bit adicional (bit de paridad) que se usaba
para detectar errores en la transmisión. A menudo se llama incorrectamente ASCII a
otros códigos de caracteres de 8 bits, como el estándar ISO-8859-1, que es una extensión que
utiliza 8 bits para proporcionar caracteres adicionales usados en idiomas distintos al inglés,
como el español. ASCII fue publicado como estándar por primera vez en 1967 y fue actualizado
por última vez en 1986. En la actualidad define códigos para 32 caracteres no imprimibles, de
los cuales la mayoría son caracteres de control que tienen efecto sobre cómo se procesa el
texto, más otros 95 caracteres imprimibles que les siguen en la numeración (empezando por el
carácter espacio). Casi todos los sistemas informáticos actuales utilizan el código ASCII o una
extensión compatible para representar textos y para el control de dispositivos que manejan
texto como el teclado. No deben confundirse los códigos ALT + número de teclado con los
códigos ASCII. Las computadoras solamente entienden números. El código ASCII es una
representación numérica de un carácter como ‘a’ o ‘@’.1
La Organización Internacional de Estandarización (ISO) publicó su versión, ISO 646 (más tarde
ISO/IEC 646) en 1967, 1972, 1983 y 1991. En particular, ISO 646:1972 estableció un conjunto
de versiones específicas para cada país donde los caracteres de puntuación fueron
reemplazados con caracteres no ingleses. ISO/IEC 646:1991 La International Reference
Versión es la misma que en el ANSI X3.4-1986. La Unión Internacional de Telecomunicaciones
(ITU) publicó su versión de ANSI X3.4-1986, Recomendación ITU T.50, en 1992. A principios de
la década de 1970 publicó una versión como Recomendación CCITT V.3. DIN publicó una
versión de ASCII como el estándar DIN 66003 en 1974.
El Grupo de Trabajo en Ingeniería de Internet (IETF) publicó una versión en 1969 como RFC
20, y estableció la versión estándar para Internet, basada en ANSI X3.4-1986, con la
publicación de RFC 1345 en 1992. La versión de IBM de ANSI X3.4-1986 se publicó en la
literatura técnica de IBM como página de códigos 367.
El código ASCII también está incluido en su probable relevo, Unicode, constituyendo los
primeros 128 caracteres (o los 'más bajos').
Muchos de los caracteres de control ASCII servían para marcar paquetes de datos, o para
controlar protocolos de transmisión de datos (por ejemplo ENQuiry, con el significado: ¿hay
alguna estación por ahí?, ACKnowledge: recibido o ", Start Of Header: inicio de cabecera, Start
of TeXt: inicio de texto, End of TeXt: final de texto, etc.). ESCape y SUBstitute permitían a un
protocolo de comunicaciones, por ejemplo, marcar datos binarios para que contuviesen códigos
con el mismo código que el carácter de protocolo, y que el receptor pudiese interpretarlos como
datos en lugar de como caracteres propios del protocolo. Los diseñadores del código ASCII
idearon los caracteres de separación para su uso en sistemas de cintas magnéticas. Dos de los
caracteres de control de dispositivos, comúnmente llamados XON y XOFF generalmente
ejercían funciones de caracteres de control de flujo para controlar el flujo hacia un dispositivo
lento (como una impresora) desde un dispositivo rápido (como un ordenador), de forma que los
datos no saturasen la capacidad de recepción del dispositivo lento y se perdiesen.
Los primeros usuarios de ASCII adoptaron algunos de los códigos de control para representar
"metainformación" como final-de-línea, principio/final de un elemento de datos, etc. Estas
asignaciones a menudo entraban en conflicto, así que parte del esfuerzo de convertir datos de
un formato a otro comporta hacer las conversiones correctas de metainformación. Por ejemplo,
el carácter que representa el final-de-línea en ficheros de texto varía con el sistema operativo.
Cuando se copian archivos de un sistema a otro, el sistema de conversión debe reconocer
estos caracteres como marcas de final-de-línea y actuar en consecuencia. Actualmente los
usuarios de ASCII usan menos los caracteres de control, (con algunas excepciones como
"retorno de carro" o "nueva línea"). Los lenguajes modernos de etiquetas, los protocolos
modernos de comunicación, el paso de dispositivos basados en texto a basados en gráficos, el
declive de las teleimpresoras, las tarjetas perforadas y los papeles continuos han dejado
obsoleta la mayoría de caracteres de control.
El carácter 'espacio', designa al espacio entre palabras, y se produce normalmente por la barra
espaciadora de un teclado. Los códigos del 33 al 126 se conocen como caracteres imprimibles,
y representan letras, dígitos, signos de puntuación y varios símbolos. El ASCII de siete bits
proporciona siete caracteres "nacionales" y, si la combinación concreta de hardware y software
lo permite, puede utilizar combinaciones de teclas para simular otros caracteres internacionales:
en estos casos un backspace puede preceder a un acento abierto o grave (en los estándares
británico y estadounidense, pero sólo en estos estándares, se llama también "opening single
quotation mark"), una tilde o una "marca de respiración".
Rasgos Estructurales
• Los dígitos del 0 al 9 se representan con sus valores prefijados con el valor 0011 en
binario (esto significa que la conversión BCD-ASCII es una simple cuestión de tomar
cada unidad bcd y prefijarla con 0011).
• Las cadenas de bits de las letras minúsculas y mayúsculas sólo difieren en un bit,
simplificando de esta forma la conversión de uno a otro grupo.
Variantes ASCII
No especificó códigos adicionales, así que reasignó algunos específicamente para los nuevos
lenguajes. De esta forma se volvió imposible saber en qué variante se encontraba codificado el
texto, y, consecuentemente, los procesadores de texto podían tratar una sola variante. La
tecnología mejoró y aportó medios para representar la información codificada en el octavo bit de
cada byte, liberando este bit, lo que añadió otros 128 códigos de carácter adicionales que
quedaron disponibles para nuevas asignaciones. Por ejemplo, IBM desarrolló páginas de código
de 8 bits, como la página de códigos 437, que reemplazaba los caracteres de control con
símbolos gráficos como sonrisas, y asignó otros caracteres gráficos adicionales a los 128 bytes
superiores de la página de códigos.
Algunos sistemas operativos como DOS, podían trabajar con esas páginas de código, y los
fabricantes de ordenadores personales incluyeron soporte para dichas páginas en su hardware.
Los estándares de ocho bits como ISO 8859 y Mac OS Román fueron desarrollados como
verdaderas extensiones de ASCII, dejando los primeros 127 caracteres intactos y añadiendo
únicamente valores adicionales por encima de los 7-bits. Esto permitió la representación de un
abanico mayor de lenguajes, pero estos estándares continuaron sufriendo incompatibilidades y
limitaciones. Todavía hoy, ISO-8859-1 y su variante Windows-1252 (a veces llamada
erróneamente ISO-8859-1) y el código ASCII original de 7 bits son los códigos de carácter más
comúnmente utilizados.
La abreviatura ASCIIZ o ASCIZ se refiere a una cadena de caracteres terminada en cero (del
inglés "zero"). Es muy normal que el código ASCII sea embebido en otros sistemas de
codificación más sofisticados y por esto debe tenerse claro cual es papel del código ASCII en la
tabla o mapa de caracteres de un ordenador.
Arte ASCII
El código de caracteres ASCII es el soporte de una disciplina artística minoritaria, el arte ASCII,
que consiste en la composición de imágenes mediante caracteres imprimibles ASCII. El efecto
resultante ha sido comparado con el puntillismo, pues las imágenes producidas con esta técnica
generalmente se aprecian con más detalle al ser vistas a distancia. El arte ASCII empezó
siendo un arte experimental, pero pronto se popularizó como recurso para representar
imágenes en soportes incapaces de procesar gráficos, como teletipos, terminales, correos
electrónicos o algunas impresoras.
Aunque se puede componer arte ASCII manualmente mediante un editor de textos, también se
pueden convertir automáticamente imágenes y vídeos en ASCII mediante software, como la
librería Aalib (de licencia libre), que ha alcanzado cierta popularidad. Aalib está soportada por
algunos programas de diseño gráfico, juegos y reproductores de vídeo.
Un lenguaje de programación de alto nivel se caracteriza por expresar los algoritmos de una
manera adecuada a la capacidad cognitiva humana, en lugar de la capacidad ejecutora de las
máquinas. En los primeros lenguajes, la limitación era que se orientaban a un área específica y
sus instrucciones requerían de una sintaxis predefinida. Se clasifican como lenguajes
procedimentales o lenguajes de bajo nivel. Otra limitación de estos es que se requiere de
ciertos conocimientos de programación para realizar las secuencias de instrucciones lógicas.
Los lenguajes de alto nivel se crearon para que el usuario común pudiese solucionar un
problema de procesamiento de datos de una manera más fácil y rápida. Por esta razón, a
finales de los años 1950 surgió un nuevo tipo de lenguajes de programación que evitaba estos
inconvenientes, a costa de ceder un poco en las ventajas. Estos lenguajes se llaman de tercera
generación o de nivel alto, en contraposición a los de bajo nivel o de nivel próximo a la
máquina.
Ésta es la razón por la que a estos lenguajes se les considera de alto nivel, porque se pueden
utilizar palabras de muy fácil comprensión para el programador. En contraposición,
los lenguajes de bajo nivel son aquellos que están más cerca del "entendimiento" de la
máquina. Otros lenguajes de alto nivel son: Ada, BASIC, COBOL, FORTRAN, Pascal, etc.
Otra característica importante de los lenguajes de alto nivel es que, para la mayoría de las
instrucciones de estos lenguajes, se necesitarían varias instrucciones en un lenguaje
ensamblador para indicar lo mismo. De igual forma que, la mayoría de las instrucciones de un
lenguaje ensamblador, también agrupa a varias instrucciones de un lenguaje máquina.
LENGUAJE DE BAJO NIVEL
Dicho lenguaje es muy simple o nada complicado, pero estructurar programas a ese nivel es
muy difícil. Dado que este lenguaje viene dado por las especificaciones técnicas del hardware,
no permite una abstracción fuera de lo estipulado para el microprocesador de un ordenador.
Consecuentemente, es fácilmente trasladado a lenguaje de máquina.
Los lenguajes de bajo nivel son más fáciles de utilizar que los lenguajes máquina, pero, al igual
que ellos, dependen de la máquina en particular. El lenguaje de bajo nivel por excelencia es el
ensamblador. Las instrucciones en lenguaje ensamblador son instrucciones conocidas como
nemotécnicos. Por ejemplo, nemotécnicos típicos de operaciones aritméticas son: en inglés,
ADD, SUB, DIV, etc.; en español, SUM, RES, DIV, etc. Una instrucción típica de suma sería:
ADD M, N, P
Esta instrucción podría significar “sumar el número contenido en la posición de memoria M al
número almacenado en la posición de memoria N y situar el resultado en la posición de
memoria P”. Evidentemente es mucho más sencillo recordar la instrucción anterior con un
nemotécnico que su equivalente en código máquina”.
0110 1001 1010 1011
Son aquéllos que están escritos en lenguajes directamente inteligibles por la máquina
(computadora), ya que sus instrucciones son cadenas binarias (cadenas o series de caracteres
de dígitos 0 y 1) que especifican una operación y las posiciones (dirección) de memoria
implicadas en la operación se denominan instrucciones de máquina o código máquina. El
código máquina es el conocido código binario.
Las instrucciones en lenguaje máquina dependen del hardware de la computadora y, por tanto,
diferirán de una computadora a otra.
Este artefacto posee un leguaje de alto nivel, la cual es dotado por programas
fundamentales que es capaza de manipular este aparto y le da mayor dificultad de
uso a los usuarios, mientras que lenguaje de bajo nivel es un poco más factible
que el lenguaje de alto nivel.
BIBLIOGRAFÍA
http://148.204.211.134/polilibros/portal/polilibros/p_terminados/polilibrofc/unidad_iii/unidad%20iii
_5.htm
http://cristinapozo.blogspot.com/2010/10/definicion-de-sistema-octal.html
http://dcb.fi-c.unam.mx/users/miguelegc/tutoriales/tutorialcd/cncpt_lgtm_cmpt_5.htm
http://es.wikipedia.org/wiki/ascii
http://es.wikipedia.org/wiki/lenguaje_de_alto_nivel
http://es.wikipedia.org/wiki/lenguaje_de_bajo_nivel
http://es.wikipedia.org/wiki/lenguaje_de_m%c3%a1quina
http://es.wikipedia.org/wiki/sistema_binario
http://es.wikipedia.org/wiki/sistema_de_numeraci%c3%b3n_decimal
http://es.wikipedia.org/wiki/sistema_hexadecimal
http://es.wikipedia.org/wiki/sistema_octal
http://html.rincondelvago.com/lenguajes-de-bajo-nivel.html
http://informatica.dgenp.unam.mx/recomendaciones/codigo-ascii
http://platea.pntic.mec.es/~lgonzale/tic/binarios/numeracion.html
http://recursostic.educacion.es/descartes/web/materiales_didacticos/decimal1/sistema.htm
http://v2.educarex.es/web/fsanchezm02/sistema-de-numeracion-decimal
http://www.alegsa.com.ar/dic/lenguaje%20de%20programacion%20de%20alto%20nivel.php
http://www.areatecnologia.com/sistema-binario.htm
http://www.carlospes.com/minidiccionario/lenguaje_de_alto_nivel.php
http://www.carlospes.com/minidiccionario/lenguaje_de_bajo_nivel.php
http://www.carlospes.com/minidiccionario/lenguaje_maquina.php
http://www.ecured.cu/index.php/sistema_octal
http://www.elcodigoascii.com.ar/
http://www.grupoalquerque.es/ferias/2012/archivos/s-n_nuevos/s-n_hexadecimal.pdf
http://www.mastermagazine.info/termino/5556.php
http://www.unicrom.com/dig_sist_numeracion_octal.asp