Wednesday, November 2, 2016

Ascii Códigos Extendidos De Opciones Binarias

Ascii vs archivos binarios Introducción La mayoría de la gente clasificar los archivos en dos categorías: los archivos binarios y archivos ASCII (texto). Usted ha hecho trabajó con ambos. Cualquier programa que escribe (C / C / Perl / HTML) es casi seguro que un archivo ASCII. Un archivo ASCII se define como un archivo que consiste en caracteres ASCII. Su normalmente creados mediante el uso de un editor de texto como emacs, pico, VI, Bloc de notas, etc. Hay editores más elegantes que hay para escribir código, pero no siempre puede guardarlo como ASCII. Como acotación al margen, archivos de texto ASCII parecen muy americano-céntrica. Después de todo, la A en ASCII significa americano. Sin embargo, los EE. UU. no parecen dominar el mercado de software, y así efectivamente, su una norma internacional. La informática es todo acerca de la creación de buenas abstracciones. A veces tiene éxito ya veces no funciona. Buenas abstracciones son todos acerca de la presentación de una visión del mundo que el usuario puede utilizar. Una de las abstracciones más exitosos es el editor de texto. Cuando estás escribiendo un programa, y ​​escribir en los comentarios, es difícil imaginar que esta información no se almacena como caracteres. Por supuesto, si alguien realmente dijo Adelantado, usted no piensa realmente esos caracteres se guardan como personajes, ¿te No saben sobre el código ASCII, a continuación, de acuerdo youd de mala gana que los archivos ASCII / de texto se almacenan realmente como 0s y 1s. Sin embargo, su difícil de pensar de esa manera. archivos ASCII son realmente almacenados como 1s y 0s. Pero ¿qué significa decir que su almacenado como 1s y 0s Los archivos se almacenan en los discos, discos y tener alguna forma de representar 1s y 0s. Nosotros simplemente les llamamos 1s y 0s porque eso es también una abstracción. De cualquier forma se utiliza para almacenar los 0s y 1s en un disco, que no cuida, siempre y cuando podamos pensar en ellos de esa manera. En efecto, los archivos ASCII son básicamente archivos binarios, ya que almacenan números binarios. Es decir, ASCII 0s y 1s almacenar archivos. La diferencia entre ASCII y archivos binarios archivo ASCII An es un archivo binario que almacena los códigos ASCII. Recordemos que un código ASCII es un código de 7 bits almacenado en un byte. Para ser más específicos, hay 128 códigos ASCII diferentes, lo que significa que sólo se necesitan 7 bits para representar un carácter ASCII. Sin embargo, ya que el tamaño mínimo viable es 1 byte, los 7 bits son los bajos 7 bits de cualquier byte. El bit más significativo es 0. Esto significa que, en cualquier archivo ASCII, usted está perdiendo 1/8 de los bits. En particular, no se usa el bit más significativo de cada byte. Aunque los archivos ASCII son archivos binarios, algunas personas los tratan como diferentes tipos de archivos. Me gusta pensar en ficheros ASCII como tipos especiales de archivos binarios. Ayúdales archivos binarios, donde cada byte está escrito en código ASCII. Un archivo binario completo, en general no tiene ningún tipo de restricciones. Cualquiera de los patrones 256 de bits se puede utilizar en cualquier byte de un archivo binario. Trabajamos con archivos binarios todo el tiempo. Ejecutables, archivos de objetos, archivos de imágenes, archivos de sonido, y muchos formatos de archivo son archivos binarios. Lo que los hace binario es simplemente el hecho de que cada byte de un archivo binario puede ser uno de los patrones 256 de bits. Theyre no restringido a los códigos ASCII. Ejemplo de archivos ASCII Supongamos que usted está editando un archivo de texto con un editor de texto. Debido a que usted está usando un editor de texto, usted es más o menos la edición de un archivo ASCII. En este nuevo archivo de marca, que escribe en el gato. Es decir, las letras c, entonces a continuación, t. A continuación, guardar el archivo y salga. ¿Qué pasa por el momento, que suele preocuparnos por el mecanismo de lo que significa para abrir un archivo, modificarla y cerrarla. En su lugar, se ocupa de la codificación ASCII. Si usted mira para arriba de una tabla ASCII, usted descubrirá el código ASCII 0x63, 0x61, 0x74 (el 0x se limita a indicar los valores están en hexadecimal, en lugar de decimales / base 10). Aquí es como se ve: Cada vez que escriba un carácter ASCII y lo guarda, un byte entero está escrito que corresponde a ese personaje. Esto incluye signos de puntuación, espacios, y así sucesivamente. Recuerdo una vez que un estudiante ha utilizado 100 asteriscos en sus comentarios, y estos asteriscos apareció en todas partes. Cada asterisco usa un byte en el archivo. Hemos salvado miles de bytes de sus archivos mediante la eliminación de los comentarios, la mayoría de los asteriscos, lo que hizo el archivo se ven bien, pero aún no ha añadir a la claridad. Por lo tanto, cuando se escribe un c, que se guarda como su 0110 0011 a un archivo. Ahora, a veces lanza un editor de texto en caracteres que no puede esperar. Por ejemplo, algunos editores insisten en que cada línea termina con un carácter de nueva línea. ¿Qué significa eso Una vez me preguntaron por un estudiante, ¿qué ocurre si el final de la línea no tiene un carácter de nueva línea. Este estudiante pensó que los archivos se guardan como dos dimensiones (si el estudiante se dio cuenta de ir o no). Él no sabía que se guarda como una matriz unidimensional. Él no se da cuenta de que el carácter de nueva línea define el final de la línea. Sin ese carácter de nueva línea, usted no ha llegado al final de la línea. El único lugar de un archivo puede faltar una nueva línea al final de la línea es la última línea. Algunos editores permiten la última línea que termina en algo más que un carácter de nueva línea. Algunos editores añaden una nueva línea al final de cada archivo. Desafortunadamente, incluso el carácter de nueva línea no es tan universalmente estándar. Su común para utilizar caracteres de nueva línea en los ficheros UNIX, pero en Windows, su común utilizar dos caracteres al final de cada línea (retorno de carro, nueva línea, que es r y n, creo). ¿Por qué dos caracteres cuando sólo uno es necesario Esta se remonta a las impresoras. En los viejos tiempos, el tiempo necesario para que una impresora para volver de nuevo al principio de una línea es igual al tiempo que le llevó a escribir dos caracteres. Así, dos personajes se colocaron en el archivo para dar tiempo a la impresora para mover el balón impresora de nuevo al principio de la línea. Este hecho isnt tan importante. Su mayoría de trivia. La razón por la que sacar el tema es si acaso has preguntado por qué la transferencia de archivos de UNIX desde Windows genera, a veces divertidos personajes. Edición de archivos binarios Ahora que sabe que cada carácter escrito en un archivo ASCII corresponde a un byte en un archivo, es posible entender por qué es difícil de editar un archivo binario. Si desea editar un archivo binario, que realmente le gustaría editar bits individuales. Por ejemplo, suponga que desea escribir el patrón binario 1100 0011. ¿Cómo hacer esto Usted puede ser ingenua, y escriba lo siguiente en un archivo: Pero usted debe saber, por ahora, que esto no es la edición de bits individuales de una archivo. Si escribe en 1 y 0, en realidad estás entrando en 0x49 y 0x48. Es decir, usted está entrando en 0100 1001 y 0100 1000 en los archivos. Usted es en realidad (indirectamente) a escribir 8 bits a la vez. Pero, ¿cómo se supone que debo editar archivos binarios, exclamáis A veces veo a este dilema. Los estudiantes se les dice para realizar una tarea. Tratan de hacer la tarea, ya pesar de que su solución no tiene ningún sentido en absoluto, todavía lo hacen. Si se le pide que pensar si esta solución realmente funciona, es posible que con el tiempo la razón de que su mal, pero entonces theyd preguntar, pero ¿Cómo puedo editar un archivo binario ¿Cómo edito los bits individuales La respuesta no es sencilla. Hay algunos programas que le permiten escribir en el 49, y se traduce a un solo byte, 0100 1001, en lugar del código ASCII para 4 y 9. Se puede llamar a estos programas Hexadecimal. Desafortunadamente, estos no pueden ser tan fácilmente disponible. No es demasiado difícil de escribir un programa que lee en un archivo ASCII que se ve como pares hexagonales, pero luego lo convierte en un archivo binario verdadero con los patrones de bits correspondientes. Es decir, se necesita un archivo que se parece: y convierte este archivo ASCII en un archivo binario que comienza 0110 0011 (que es 63 en binario). Observe que este archivo es ASCII, lo que significa cuál es realmente almacenado es el código ASCII para 6, 3, (espacio), a, 0, y así sucesivamente. Un programa puede leer este archivo ASCII a continuación, generar el código binario correspondiente y escribir que en un archivo. Por lo tanto, el archivo ASCII puede contener 8 bytes (6 para los caracteres, 2 para los espacios), y el archivo binario de salida contendría 3 bytes, un byte por par hex. Visualización de archivos binarios La mayoría de los sistemas operativos vienen con algún programa que le permite ver un archivo en formato binario. Sin embargo, la lectura de 0s y 1s pueden ser engorrosos, por lo que suelen traducirse en hexadecimal. Existen programas llamados hexdump que vienen con la distribución de Linux o xxd. Mientras que la mayoría de la gente prefiere ver los archivos a través de un editor de texto, sólo se puede ver convenientemente archivos ASCII de esta manera. La mayoría de los editores de texto dejarán que nos fijamos en un archivo binario (como un archivo ejecutable), pero insertas de cosas que parecen indicar los caracteres de control. Un buen hexdump intentará traducir los pares hexadecimales a ASCII imprimible si se puede. Esto es interesante porque se descubre que en, por ejemplo, archivos ejecutables, muchas partes del archivo están siendo escritos en ASCII. Así que esta es una característica muy útil tener. Escribir archivos binarios, Parte 2 ¿Por qué la gente usa los archivos binarios de todos modos Una de las razones es la compacidad. Por ejemplo, suponga que desea escribir el número 100000. Si escribe en ASCII, esto podría tardar de 6 caracteres (que es de 6 bytes). Sin embargo, si usted representa como binario sin signo, se puede escribir a cabo por medio de 4 bytes. ASCII es conveniente, ya que tiende a ser legible por humanos, pero se puede utilizar una gran cantidad de espacio. Puede representar la información de forma más compacta mediante el uso de archivos binarios. Por ejemplo, una cosa que puede hacer es guardar un objeto en un archivo. Se trata de un tipo de serialización. Para volcar en un archivo, se utiliza un método de escritura (). Por lo general, se pasa en un puntero al objeto y el número de bytes utilizados para representar el objeto (utilizar el operador sizeof para determinar esto) con el método de escritura (). El método entonces descarga los bytes tal como aparece en la memoria en un archivo. A continuación, puede recuperar la información del archivo y colocarlo en el objeto mediante el uso de un método de lectura correspondiente () que por lo general toma un puntero a un objeto (y debe apuntar a un objeto que se ha asignado la memoria, ya sea estática o dinámica asignado) y el número de bytes para el objeto, y copia los bytes del archivo al objeto. Por supuesto, hay que tener cuidado. Si utiliza dos compiladores diferentes, o transferir el archivo de un tipo de máquina a otra, este proceso no puede trabajar. En particular, el objeto puede ser establecido de forma diferente. Esto puede ser tan simple como el orden de bits, o puede haber problemas con el acolchado. Este modo de ahorro de objetos en un archivo es agradable y simple, pero puede no ser tan portátil. Además, se hace el equivalente de una copia superficial. Si el objeto contiene punteros, éste escriba las direcciones en el fichero. Esas direcciones es probable que sean totalmente sin sentido. Las direcciones pueden tener sentido en el momento de un programa se está ejecutando, pero si se cierra y reinicia, estas direcciones pueden cambiar. Esto es por qué algunas personas inventan su propio formato para el almacenamiento de objetos: para aumentar la portabilidad. Pero si usted sabe que enviaban el almacenamiento de objetos que contienen punteros, y usted está leyendo el archivo en el mismo tipo de sistema informático que lo escribió en, y estás usando el mismo compilador, que debería funcionar. Esta es una razón por la gente a veces prefieren escribir a cabo enteros, caracteres, etc. en lugar de objetos enteros. Ellos tienden a ser algo más portátil. Resumen Un archivo ASCII es un archivo binario que consiste en caracteres ASCII. Los caracteres ASCII pueden codificaciones de 7 bits almacenados en un byte. Por lo tanto, cada byte de un archivo ASCII tiene su bit más significativo puesto a 0. pensar en un archivo ASCII como un tipo especial de archivo binario. Un archivo binario genérico utiliza los 8-bits. Cada byte de un archivo binario puede tener los 256 patrones cadena de bits completo (a diferencia de un archivo ASCII, que sólo tiene 128 patrones de cadena de bits). Puede haber un momento en que los archivos de texto Unicode se hace más prevalente. Pero por ahora, los archivos ASCII son el formato estándar de texto files. Ascii texto a binario convertidor Para poder utilizar este texto ASCII a binario herramienta de conversión, escriba un valor ASCII como ayuda para conseguir 01101000011001010110110001110000 y después haga clic en el botón Convert. Esta es la forma en que se puede convertir hasta 128 caracteres de texto ASCII a binario. Ascii ASCII es un sistema de codificación, conocida como una abreviatura para el Código Estándar Americano para Intercambio de Información. Diseñado inicialmente para los ordenadores de tipo viejas e impresoras de códigos telegráficos, que estaba basado en 128 símbolos que incluyen 10 números, 26 letras del alfabeto Inglés, una serie de signos de puntuación, etc. El sistema representa los caracteres o comandos visibles para la impresión como inicio, espera, completa, etc. Las últimas versiones de los sistemas ASCII son muy ampliamente utilizados en equipos de telecomunicaciones y la informática. Hex Hex System. o hexadecimal. es un sistema de numeración de base 16. Este sistema de numeración es especialmente interesante porque en nuestro sistema decimal usado casualmente tenemos solamente 10 dígitos que representan los números. Como sistema hexagonal tiene 16 dígitos, el extra necesario 6 dígitos están representados por las primeras 6 letras del alfabeto Inglés. Por lo tanto, dígitos hexadecimales son 0,1,2,3,4,5,6,7,8 y 9 A, B, C, D, E, F. Este sistema de numeración es el más utilizado en las matemáticas y las tecnologías de la información. Es decir. en html colores de programación pueden ser representados por un número hexadecimal de 6 dígitos. FFFFFF representa el blanco, 000 000 representa el negro, y así sucesivamente. Texto ASCII a binario ejemplos de conversión de ayuda (01101000011001010110110001110000) 2 mar (011100110110010101100001) 2 amor (01101100011011110111011001100101) 2 Compruebe también la tabla de conversión de binario ascii cómo convertir texto ASCII para binary. The siguiente tabla ASCII contiene dos caracteres de control ASCII, caracteres ASCII imprimibles y el extendido de caracteres ASCII ISO 8859-1, también llamado código ASCII ISO Latín1 - la tabla ASCII ASCII extendido significa Código Estándar americano para Intercambio de Información. Es un código de caracteres de 7 bits, donde cada bit representa un carácter único. En esta página web encontrará 8 bits, 256 caracteres, según la norma ISO 8859-1 y Microsoft Windows Latin-1 aumento de caracteres, que está disponible en ciertos programas como Microsoft Word. los caracteres de control ASCII (código de caracteres 0-31) Los primeros 32 caracteres de la tabla ASCII son códigos de control no imprimibles y se utilizan para controlar los periféricos, como printers. Binary Comparar Opciones del cuadro de diálogo Opciones de Comparación Comparación tamaño de bloque Tamaño mínimo de bloques diferencia, en bytes . Cuanto más grande sea el número, más rápido y menos precisa la comparación. La comparación binaria más precisa se realiza cuando el tamaño del bloque es de 1 byte. Sin embargo, si se comparan los archivos de gran tamaño, la comparación puede tardar mucho tiempo, que tendría sentido que sacrificar un poco de precisión para un mejor rendimiento. Número de bytes por línea de utilizar este número de utilizar el número especificado de bytes por línea. Cambiar el número de bytes por línea para adaptarse siempre la pantalla o área de impresión ancho actual. Especificar el formato de valor de byte para ser utilizado en la parte izquierda de la pantalla binario. Especificar el caso valor de byte para ser utilizado en la parte izquierda de la pantalla binario. Esta opción sólo afecta a formato hexadecimal. Utilice el juego de caracteres ASCII para mostrar códigos de bytes. los caracteres de control de visualización (con valores 1. 31), mientras que muestran los códigos ASCII. Si no, mostrar la. personaje. los caracteres extendidos de pantalla (con valores de 128. 255), mientras que muestran los códigos ASCII. Si no, mostrar la. personaje. Utilice el carácter EBCDIC configurado para mostrar el byte codes. The Código Estándar Americano para Intercambio de Información (ASCII) fue desarrollado bajo los auspicios de un comité de la American Standards Association, llamado el comité X3, por su X3.2 (más tarde X3L2) subcomité, y más tarde por ese grupo de trabajo subcomités X3.2.4. El ASA se convirtió en los Estados Unidos de América Standards Institute o USASI y, finalmente, el Instituto Americano de Estándares Nacionales. El subcomité X3.2 diseñado ASCII basado en sistemas de codificación teletipo anteriores. Al igual que otras codificaciones de caracteres, ASCII especifica una correspondencia entre los patrones de bits digitales y símbolos de caracteres (es decir grafemas y caracteres de control). Esto permite que los dispositivos digitales para comunicarse entre sí y para procesar, almacenar y comunicar información orientado a caracteres tales como el lenguaje escrito. Antes fue desarrollado ASCII, las codificaciones en uso incluyen 26 caracteres alfabéticos, numéricos de 10 dígitos, y del 11 al 25 símbolos gráficos especiales. Para incluir todos estos, y los caracteres de control compatibles con el Comit Consultivo Internacional Tlphonique et Alfabeto Telegráfico Internacional Nº 2 (ATI N. ° 2) estándar Tlgraphique (CCITT), Fieldata, ya principios de EBCDIC, se requiere más de 64 códigos de ASCII. El comité debatió la posibilidad de una función de tecla de mayúsculas (como el código Baudot), lo que permitiría a más de 64 códigos para ser representados por seis bits. En un código cambiado, algunos códigos de caracteres determinan la elección entre las opciones para los siguientes códigos de caracteres. Permite codificación compacta, pero es menos fiable para la transmisión de datos un error en la transmisión del código de turno típicamente hace una larga parte de la transmisión ilegible. El comité de estándares decidió en contra de desplazamiento, y así ASCII requiere al menos un código de siete bits. El comité consideró un código de ocho bits, ya que ocho bits (octetos) que permitirían a dos patrones de cuatro bits para codificar eficientemente dos dígitos con decimal codificado en binario. Sin embargo, se requeriría toda la transmisión de datos a enviar ocho bits cuando siete podrían ser suficiente. El comité votó a favor de usar un código de siete bits para minimizar los costos asociados con la transmisión de datos. Puesto que la cinta perforada en el momento podría registrar ocho bits en una posición, sino que también permitió un bit de paridad para la comprobación de errores, si se desea. máquinas de ocho bits (con octetos como el tipo de datos nativo) que no utilizaron la comprobación de paridad suelen establecer el octavo bit a 0. El código en sí fue diseñado de forma que la mayoría de los códigos de control estaban juntos, y todos los códigos gráficos estaban juntos, para facilitar la identificación. Las dos primeras columnas (32 posiciones) se reservan para caracteres de control. El carácter de espacio tenía que venir antes de gráficos para hacer más fácil la clasificación, por lo que se hizo cargo 20hex por la misma razón, muchos signos especiales que se utilizan comúnmente como separadores se colocan antes de los dígitos. El comité decidió que era importante apoyar casos alfabetos de 64 caracteres superiores, y optó por el patrón ASCII por lo que podría reducirse fácilmente a un útil conjunto de 64 caracteres de códigos gráficos. Las letras en minúscula, por tanto, no se intercalan con mayúsculas. Para mantener las opciones disponibles para las letras minúsculas y otros gráficos, los códigos numéricos especiales y se dispusieron antes de las letras, y la letra A se colocó en la posición 41hex para que coincida con el borrador de la norma británica correspondiente. Los dígitos 09 se disponen de modo que se corresponden con los valores en binario con el prefijo 011, haciendo la conversión con-decimal codificado en binario sencillo. Muchos de los caracteres no alfanuméricos se colocaron para corresponder a su posición desplazada en máquinas de escribir. Por lo tanto, y se colocaron a corresponden a las 3, 4, y 5 en la columna adyacente. Los paréntesis podrían no corresponder a 9 y 0, sin embargo, porque el lugar que corresponde a 0 fue tomada por el carácter de espacio. Dado que muchas máquinas de escribir europeos colocan los paréntesis con 8 y 9, las posiciones correspondientes se eligieron por los paréntesis. El símbolo no fue utilizado en Europa continental y el comité espera que sería reemplazado por un acento en la variación francesa, por lo que el se colocó en la posición 40hex al lado de la letra A. Los códigos de control se sentían esencial para la transmisión de datos fueron el inicio de mensaje (SOM), final de la dirección (EOA), fin de mensaje (EOM), final de la transmisión (EOT), ¿quién es usted (WRU), son que (RU), un control de dispositivo reservado (CC0), inactivo síncrona (SYNC ), y reconocer (ACK). Estos fueron posicionados para maximizar la distancia de Hamming entre sus patrones de bits. Con la otra caracteres especiales y códigos de control que respondieron, ASCII fue publicado como ASA X3.4-1963, dejando 28 posiciones de código sin ningún significado asignado, reservados para futura normalización, y un código de control sin asignar. Hubo algún debate en el momento si debe haber más caracteres de control, más que el alfabeto en minúsculas. La indecisión no duró mucho: en mayo de 1963, el Grupo de Trabajo del CCITT en el Nuevo Alfabeto Telegráfico propone asignar los caracteres en minúscula para las columnas 6 y 7, y la Organización Internacional de Normalización TC 97 SC 2 votó en octubre para incorporar el cambio en su proyecto estándar. El grupo de trabajo X3.2.4 votó su aprobación para que el cambio ASCII en su reunión de mayo de 1963. Localización de las letras minúsculas en las columnas 6 y 7 causó que los personajes difieren en el patrón de bits de la caja superior por un solo bit, lo que simplifica mayúsculas y minúsculas juego de caracteres y la construcción de los teclados e impresoras. El comité X3 hizo otros cambios, incluyendo otros nuevos personajes (el corsé y caracteres de línea vertical), cambiar el nombre de algunos caracteres de control (SOM se convirtió inicio de cabecera (SOH)) y mover o retirar otros (RU fue eliminado). ASCII fue actualizado posteriormente como USASI X3.4-1967, a continuación, USASI X3.4-1968, ANSI X3.4-1977, y, por último, ANSI X3.4-1986 (los dos primeros son de vez en cuando retronamed ANSI X3.4-1967, y ANSI X3.4-1968). El comité X3 también se refirió a la forma en ASCII debe ser transmitida (bit menos significativo en primer lugar), y cómo debe ser grabada en cinta perforada. Propusieron un estándar de 9 pistas de cinta magnética, e intentaron hacer frente a algunos tipos de formatos de tarjetas perforadas. ASCII en sí fue utilizado comercialmente por primera vez durante el 1963 como un código de teletipos de siete bits para la red de American Telephone Telégrafos TWX (Teletypewriter de cambio). TWX originalmente utilizado el código Baudot de cinco bits anterior, que también fue utilizado por el sistema de teletipos télex competir. Bob Bemer introdujo características tales como la secuencia de escape. Su colega británico Hugh McGregor Ross ayudó a popularizar este workaccording a Bemer, tanto es así que el código que se convertiría en ASCII fue llamado por primera vez el Código Bemer-Ross en Europa. Debido a su extenso trabajo en ASCII, Bemer ha sido llamado el padre del ASCII. El 11 de marzo de 1968, el presidente estadounidense Lyndon B. Johnson ordenó que todos los equipos comprados por el apoyo ASCII gobierno federal de los Estados Unidos, afirmando: También he aprobado las recomendaciones de la Secretaría de Comercio en materia de normas para el registro de Código Estándar para Intercambio de Información sobre magnética cintas y cintas de papel cuando se utilizan en las operaciones de computadora. Todos los ordenadores y configuraciones de equipos relacionados introducidos en el inventario Gobierno Federal a partir del 1 de julio de 1969 deben tener la capacidad de utilizar el código estándar para el intercambio de información y los formatos prescritos por las normas de cinta y papel de cinta magnética cuando se utilizan estos medios de comunicación. Otros organismos de normalización internacionales han ratificado la codificación de caracteres tales como ISO / IEC 646 que son idénticos o casi idénticos a ASCII, con extensiones para caracteres fuera del alfabeto Inglés y símbolos utilizados fuera de los Estados Unidos, como el símbolo de la libra esterlina Estados Reinos ( ). Casi todos los países necesita una versión adaptada del ASCII, ya ASCII adecuado a las necesidades de sólo el EE. UU. y algunos otros países. Por ejemplo, Canadá tuvo su propia versión que admite caracteres franceses. Otras codificaciones adaptados incluyen ISCII (India), VISCII (Vietnam), y YUSCII (Yugoslavia). A pesar de estas codificaciones se refieren a veces como ASCII, ASCII verdadera se define estrictamente solamente por norma ANSI. ASCII fue incorporado en el conjunto de caracteres Unicode como los primeros 128 símbolos, por lo que los caracteres ASCII tienen los mismos códigos numéricos en ambos conjuntos. Esto permite UTF-8 para ser compatible con ASCII, una ventaja significativa. ASCII reserva los primeros 32 códigos (números 031 decimales) para caracteres de control: códigos prevista originalmente no se representa la información imprimible, sino más bien para el control de dispositivos (como impresoras) que hacen uso de ASCII, o para proporcionar meta-información acerca de los flujos de datos tales como los almacenados en cinta magnética. Por ejemplo, el carácter 10 representa la función de avance de línea (que causa una impresora para avanzar en su papel), y el carácter 8 representa la tecla de retroceso. RFC 2822 se refiere a los caracteres de control que no incluyen el retorno de carro, avance de línea o espacio en blanco como caracteres de control no está en blanco. A excepción de los caracteres de control que prescriben formato orientado a la línea primaria, ASCII no define ningún mecanismo para describir la estructura o el aspecto del texto dentro de un documento. Otros esquemas, tales como lenguajes de marcado, página de dirección y diseño del documento y el formato. El estándar ASCII original utilizaba frases descriptivas solamente cortos para cada carácter de control. La ambigüedad esto hizo que a veces era intencional (donde un personaje se utilizaría de forma ligeramente diferente en un enlace de terminal que en un flujo de datos) y, a veces accidental (por ejemplo, lo que significa eliminar). Probablemente el dispositivo más influyente sobre la interpretación de estos personajes fue el modelo de teletipo ASR 33, que era un terminal de impresión con una opción de lectura / punzón cinta de papel disponibles. La cinta de papel fue un medio muy popular para el almacenamiento de programas a largo plazo hasta la década de 1980, menos costosos y en cierto modo menos frágil que la cinta magnética. En particular, el teletipo modelo 33 asignaciones de máquinas para los códigos 17 (Control-Q, DC1, también conocido como XON), 19 (Control-S, DC3, también conocido como XOFF), y 127 (Borrar) se convirtieron en estándares de facto. Debido a que la parte superior del teclado de la tecla O también mostró un símbolo de flecha izquierda (de ASCII-1963, que tenía este carácter en lugar de guión bajo), un uso inadecuado del código 15 (Control-O, cambio en) interpretado como borrar el carácter anterior era también adoptada por muchos sistemas de tiempo compartido temprana pero con el tiempo llegó a ser descuidada. El uso del control-S (XOFF, una abreviatura de transmisión fuera) como una señal de intercambio de advertencia de un remitente para detener la transmisión debido a desbordamiento inminente, y Control-Q (XON, transmitir encendido) para reanudar el envío, persiste hasta hoy en día en muchas sistemas como una técnica de control de salida manual. En algunos sistemas de control-S, pero conserva su significado Control-Q se sustituye por un segundo control-S para reanudar la producción. Código 127 es el nombre oficial de borrado pero la etiqueta teletipo fue borradura. Dado que la norma original no daba interpretación detallada para la mayoría de los códigos de control, la interpretación de este código variaron. El significado de teletipo original, y el propósito de la norma, fue para que sea un personaje ignorado, lo mismo que NUL (todos ceros). Esto era útil específicamente para cinta de papel, debido a la perforación, todos los patrón de bits en la parte superior de una marca existente se destruya. Cintas diseñadas para ser editado a mano, incluso podría ser producido con espacios de NULs extra (cinta en blanco), que un bloque de caracteres podría ser borrado y luego reemplazos ponen en el espacio vacío. Como los terminales de vídeo comenzaron a reemplazar la impresión queridos, se perdió el valor del carácter rubout. sistemas de DEC, por ejemplo, interpretados en el sentido de eliminar Eliminar el carácter anterior al cursor y esta interpretación también se hicieron comunes en los sistemas Unix. La mayoría de los otros sistemas utilizados Retroceso para ese significado y se utilizan Supr en el sentido de eliminar el carácter en el cursor. Esta última interpretación es la más común ahora. Muchos más de los códigos de control tienen significados muy diferentes de sus originales. El carácter de escape (ESC, código 27), por ejemplo, fue pensado originalmente para permitir el envío de otros caracteres de control como literales en lugar de invocar su significado. Este es el mismo significado de escapar encontrado en la codificación URL, cadenas de lenguaje C y otros sistemas en los que ciertos caracteres tienen un significado reservado. Con el tiempo este sentido ha sido cooptado y, finalmente, se ha cambiado. En el uso moderno, un ESC enviado a la terminal por lo general indica el inicio de una secuencia de comandos, por lo general en la forma de un llamado código de escape ANSI (o, más correctamente, un control de secuencia Introductor) comenzando con ESC seguido de un (izquierda Soporte en) carácter. Un CES enviada desde el terminal se utiliza más a menudo como un personaje fuera de banda utilizado para terminar una operación, como en el TECO y vi editores de texto. En la interfaz gráfica de usuario (GUI) y sistemas de ventanas, ESC generalmente causa una aplicación para abortar su funcionamiento actual o para salir (terminar) por completo. La ambigüedad inherente de muchos caracteres de control, combinado con su uso histórico, crea problemas al transferir archivos de texto entre sistemas. El mejor ejemplo de esto es el problema de nueva línea en diversos sistemas operativos. máquinas de teletipo que requieren una línea de texto terminarse con tanto retorno de carro (que mueve el cabezal de impresión al principio de la línea) y salto de línea (que hace avanzar el papel una línea sin mover el cabezal de impresión). El nombre de retorno de carro viene del hecho de que en una máquina de escribir manual del carro que sostiene que el papel pasó mientras que la posición en la que las teclas golpearon la cinta se mantuvo estacionaria. la totalidad del transporte tuvo que ser empujado (devuelto) a la derecha con el fin de posicionar el margen izquierdo del papel para la siguiente línea. sistemas operativos de la DEC (OS / 8, RT-11, RSX-11, RSTS, TOPS-10, etc.) utilizan ambos personajes para marcar el final de una línea de modo que el dispositivo de consola (máquinas de teletipo originalmente) funcionaría. Por el momento los llamados TTYs de vidrio (más tarde llamados tubos de rayos catódicos o terminales) llegó, la convención estaba tan bien establecido que la compatibilidad hacia atrás hizo necesario continuar la convención. Cuando Gary Kildall clonó por RT-11 para crear CP / M Siguió estableció la convención-DIC-. Hasta la introducción de PC-DOS en 1981, IBM tenía nada que ver en esto porque sus sistemas utilizados 1970 EBCDIC ASCII en lugar de operar y se les orienta hacia la entrada de tarjetas perforadas y la salida de la impresora línea en la que el concepto de retorno de carro no tenía sentido. De IBM PC-DOS (también comercializado como MS-DOS de Microsoft) heredó la convención en virtud de ser un clon de CP / M, y Windows heredó de MS-DOS. Por desgracia, lo que requiere dos caracteres para marcar el final de una línea introduce complejidad y preguntas en cuanto a la forma de interpretar cada personaje cuando se encuentran solos innecesaria. Para simplificar las cosas, archivos de texto sin formato en Multics, Unix y sistemas tipo Unix, y los sistemas Amiga utilizar avance de línea (LF) sola como un terminador de línea. El sistema operativo Macintosh original, por el contrario, hace uso del retorno de carro (CR) por sí sola como un terminador de línea Sin embargo, desde que Apple lo reemplazó con el sistema operativo OS X basado en Unix, ahora utilizan avance de línea (LF) también. La transmisión de texto a través de Internet, para protocolos como el correo electrónico y la World Wide Web, utiliza ambos personajes. Los sistemas operativos tales como algunos sistemas operativos DEC mayores, junto con CP / M, seguido longitud del archivo sólo en unidades de bloques de disco y utilizarse Control-Z (SUB) para marcar el final del texto actual en el archivo. Por esta razón, EOF, o al final del archivo, y fue utilizado coloquialmente convencionalmente como un acrónimo de tres letras (TLA) para el Control-Z en lugar del sustituto. Por una variedad de razones, el código de final de texto, ETX aka Control-C, era inapropiado y utilizando Z como el código de control para poner fin a un archivo es análogo a lo que termina el alfabeto, una ayuda nemotécnica muy conveniente. En la biblioteca C y convenciones de Unix, el carácter nulo se utiliza para terminar las cadenas de texto tales cadenas terminadas en cero, pueden ser conocidos en abreviatura como ASCIZ o ASCIIZ, donde aquí Z representa cero. Los códigos 0 a 31 y 127 (decimal) son caracteres de control no imprimibles. Código 32 (decimal) es un characer separación no imprimible. Códigos 33 a 126 (decimal) son caracteres gráficos imprimibles.


No comments:

Post a Comment