Escuela e Eucación Técnica N 17 D.E. 13 Región V Deartamento e Electrónica T.P. Nº: 2 - Cóigos - 1.- Exrear el ecimal 153 en: 1.1) BCD Aiken 1.2) BCD Exceso 3 1.3) BCD Natural 1.4) Binario Natural 1.5) ASCII 1.6) EBCDIC 2.- Diseñar un cóigo BCD con esos 4,4,3,(-2) que sea autocomlementario. 3.- Obtener el equivalente binario, hexaecimal y ecimal e los siguientes caracteres aos en cóigo ASCII. a) K b) % c) 8 ) a e) @ f) ó 4.- Cuál es la reresentación en Gray (4 bits) e los binarios: 0110 y 1111? 5.- Cuál es la reresentación en Binario (4 bits) e los números Gray: 0111 y 1101? 6.- Convertir el número: 0100 1001 1011 exresao en BCD Exceso 3 a: 6.1) BCDN 6.2) Decimal 6.3) Binario Natural 6.4) BCD Aiken 7.- A artir el BCD Exceso 3 generar un nuevo cóigo con aria ar (even) que lo llamaremos "cóigo E". 8.- A artir el BCD Aiken generar un nuevo cóigo con aria imar (o) que lo llamaremos "cóigo O". 9.- Se ha utilizao el cóigo e Hamming escrito mas abajo ara transmitir tres caracteres el cóigo BCDN con el agregao e tres bits aicionales (e aria ar). Si el mensaje recibio en caa caso es el que se inica, averiguar cuál fue el mensaje transmitio. 9.1) 1011100 9.2) 0100110 9.3) 0011000 I1 I2 I3 I4 P1 P2 P3 X X X X X X X X X X X X 10.- Se reciben consecutivamente las siguientes alabras en cóigo ASCII. Inicar cual es el texto que ebería imrimirse e acuero a ese mensaje. 01010100 10000010 01100011 01101110 01101001 01100011 01100001 01110011 11111111 01000100 01101001 01100111 01101001 01110100 01100001 01101100 01100101 01110011 00101110 Técnicas Digitales Prof. Ing. ANDRADA, J. Abel
Cóigos Decimal Binario* Gray BCD Nat. BCD Exc.3 BCD Aiken BCD Gray Johnson ASCII EBCDIC BCD 5421 BCD 4221 Nº 8 4 2 1 8 4 2 1 8 4 2 1 (a) 2 4 2 1 5 4 2 1 4 2 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0011 0000 1111 0000 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 0011 0001 1111 0001 0 0 0 1 0 0 0 1 2 0 0 1 0 0 0 1 1 0 0 1 0 0 1 0 1 0 0 1 0 0 0 1 1 0 0 0 1 1 0011 0010 1111 0010 0 0 1 0 0 0 1 0 3 0 0 1 1 0 0 1 0 0 0 1 1 0 1 1 0 0 0 1 1 0 0 1 0 0 0 1 1 1 0011 0011 1111 0011 0 0 1 1 0 0 1 1 4 0 1 0 0 0 1 1 0 0 1 0 0 0 1 1 1 0 1 0 0 0 1 1 0 0 1 1 1 1 0011 0100 1111 0100 0 1 0 0 1 0 0 0 5 0 1 0 1 0 1 1 1 0 1 0 1 1 0 0 0 1 0 1 1 0 1 1 1 1 1 1 1 1 0011 0101 1111 0101 1 0 0 0 0 1 1 1 6 0 1 1 0 0 1 0 1 0 1 1 0 1 0 0 1 1 1 0 0 0 1 0 1 1 1 1 1 0 0011 0110 1111 0110 1 0 0 1 1 1 0 0 7 0 1 1 1 0 1 0 0 0 1 1 1 1 0 1 0 1 1 0 1 0 1 0 0 1 1 1 0 0 0011 0111 1111 0111 1 0 1 0 1 1 0 1 8 1 0 0 0 1 1 0 0 1 0 0 0 1 0 1 1 1 1 1 0 1 1 0 0 1 1 0 0 0 0011 1000 1111 1000 1 0 1 1 1 1 1 0 9 1 0 0 1 1 1 0 1 1 0 0 1 1 1 0 0 1 1 1 1 1 1 0 1 1 0 0 0 0 0011 1001 1111 1001 1 1 0 0 1 1 1 1 10 1 0 1 0 1 1 1 1 11 1 0 1 1 1 1 1 0 12 1 1 0 0 1 0 1 0 13 1 1 0 1 1 0 1 1 El cóigo llamao Binario Natural es aquel que se exresa en "n" bits 14 1 1 1 0 1 0 0 1 * Coigo Binario Natural e 1 nibble o 4 bits ( n = 4 ) 15 1 1 1 1 1 0 0 0 Los cóigos BCDs sólo exresan números ecimales el 0 al 9 Decimal Cóigos e aria Cóigos e istancia unitaria Cóigos reflejaos Cóigos Progresivos Coigo e Hamming Nº Cóigo Z Cóigo W Cóigo 1 Cóigo 2 Cóigo 3 Cóigo 1 Cóigo 2 I3 I2 I1 I0 P2 P1 P0 0 0000 0 0000 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0001 1 0001 0 0 1 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 0 1 0 0 1 0 0 0 1 1 0 0 0 0 1 1 1 1 2 0010 1 0010 0 1 1 0 0 0 0 1 1 1 0 0 1 0 0 1 0 1 0 0 0 1 1 0 0 0 1 1 1 0 0 1 0 1 1 0 3 0011 0 0011 1 1 0 0 0 0 0 1 0 0 0 0 1 0 0 1 1 1 1 1 0 1 0 0 0 0 1 0 1 0 0 1 1 0 0 1 4 0100 1 0100 0 1 0 0 1 0 1 1 0 0 0 1 1 0 1 0 0 0 0 0 0 1 0 0 1 0 1 0 0 0 1 0 0 1 0 1 5 0101 0 0101 1 1 0 1 1 1 1 1 0 0 1 1 1 1 1 0 0 0 0 0 1 1 0 1 1 1 1 0 0 0 1 0 1 0 1 0 6 0110 0 0110 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 0 1 0 1 1 0 1 0 1 1 0 0 1 1 7 0111 1 0111 0 0 1 1 1 1 1 0 1 1 0 1 1 1 0 1 0 1 0 0 1 1 1 1 0 1 1 1 1 0 1 1 1 1 0 0 8 1000 1 1000 0 0 0 1 1 1 1 0 0 1 0 1 0 1 0 0 1 1 0 1 1 1 1 1 1 1 1 1 0 1 0 0 0 0 1 1 9 1001 0 1001 1 0 0 0 1 0 1 0 0 0 0 1 0 1 0 0 0 0 1 0 1 0 1 1 1 1 0 1 0 1 0 0 1 1 0 0 (a) El equivalente ecimal se obtiene restano 3 a la suma e sus esos (b) El equivalente ecimal se obtiene sumano los esos, exceto ara la rimera combinación Coigo Z con aria ar; se forma a artir el coigo BCDN más un bit aicional. Coigo W con aria imar, se forma a artir el coigo BCDN más un bit aicional. Cóigo e Hamming: Se forma a artir el cóigo BCDN con 3 bits e aria ar. P2 ( I2,I1,I0 ); P1 ( I3,I1,I0 ); P0 ( I3,I2,I0 ).
Cóigo Gray El Cóigo Gray es un caso articular e cóigo binario. Consiste en una orenación e números binarios e tal forma que caa número sólo tenga un ígito binario istinto a su reecesor. Esta técnica e coificación se originó cuano los circuitos lógicos igitales se realizaban con válvulas e vacío y isositivos electromecánicos. Los contaores necesitaban otencias muy elevaas a la entraa y generaban icos e ruio cuano varios bits cambiaban simultáneamente. El uso e cóigo Gray garantizó que en cualquier transición variaría tan sólo un bit. En la actualia, el cóigo Gray se sigue emleano ara el iseño e cualquier circuito electrónico combinacional meiante el uso e un Maa e Karnaugh, ya que el rinciio e iseño e buscar transiciones más simles y ráias entre estaos sigue vigente, a esar e que los roblemas e ruio y otencia se hayan reucio. Hay varios algoritmos ara generar una secuencia e cóigo Gray (y varios cóigos osibles resultantes, en función el oren que se esee seguir), ero el más usao consiste en cambiar el bit menos significativo que genera un nuevo cóigo. Este es un cóigo gray e cuatro bits generao con icho algoritmo: n 2 Dígito ecimal Cóigo Gray Dígito ecimal Cóigo Gray 0 0000 8 1100 1 0001 9 1101 2 0011 10 1111 3 0010 11 1110 4 0110 12 1010 5 0111 13 1011 6 0101 14 1001 7 0100 15 1000 El rimer uso ocumentao e un cóigo e estas características fue en una emostración el telégrafo el ingeniero francés Émile Bauot, en 1878. Pero no fueron atentaos hasta 1953 or Frank Gray (que io nombre al sistema e coificación), un investigaor e los laboratorios Bell.
Cóigo ASCII Formato e caracteres estánares ASCII Hex Símbolo 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0 1 2 3 4 5 6 7 8 9 A B C D E F NUL SOH STX ETX EOT ENQ ACK BEL BS TAB LF VT FF CR SO SI ASCII Hex Símbolo 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F DLE DC1 DC2 DC3 DC4 NAK SYN ETB CAN EM SUB ESC FS GS RS US ASCII Hex Símbolo 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F (esacio)! " # $ % & ' ( ) * +, -. / ASCII Hex Símbolo 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 30 31 32 33 34 35 36 37 38 39 3A 3B 3C 3D 3E 3F 0 1 2 3 4 5 6 7 8 9 : ; < = >? ASCII Hex Símbolo 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F @ A B C D E F G H I J K L M N O ASCII Hex Símbolo 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 50 51 52 53 54 55 56 57 58 59 5A 5B 5C 5D 5E 5F P Q R S T U V W X Y Z [ \ ] ^ _ ASCII Hex Símbolo 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 60 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F ` a b c e f g h i j k l m n o ASCII Hex Símbolo 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 70 71 72 73 74 75 76 77 78 79 7A 7B 7C 7D 7E 7F q r s t u v w x y z { } ~
TABLA EXTENDIDA DEL 128 AL 255 El cóigo ASCII (acrónimo inglés e American Stanar Coe for Information Interchange Cóigo Estaouniense Estánar ara el Intercambio e Información), ronunciao generalmente [áski], es un cóigo e caracteres basao en el alfabeto latino tal como se usa en inglés moerno y en otras lenguas occientales. Fue creao en 1963 or el Comité Estaouniense e Estánares (ASA, conocio ese 1969 como el Instituto Estaouniense e Estánares Nacionales, o ANSI) como una refunición o evolución e los conjuntos e cóigos utilizaos entonces en telegrafía. Más tare, en 1967, se incluyeron las minúsculas, y se reefinieron algunos cóigos e control ara formar el cóigo conocio como US-ASCII. El cóigo ASCII utiliza 7 bits ara reresentar los caracteres, aunque inicialmente emleaba un bit aicional (bit e aria) que se usaba ara etectar errores en la transmisión. A menuo se llama incorrectamente ASCII a otros cóigos e caracteres e 8 bits, como el estánar ISO-8859-1 que es una extensión que utiliza 8 bits ara roorcionar caracteres aicionales usaos en iiomas istintos al inglés, como el esañol. ASCII fue ublicao como estánar or rimera vez en 1967 y fue actualizao or última vez en 1986. En la actualia efine cóigos ara 33 caracteres no imrimibles, e los cuales la mayoría son caracteres e control obsoletos que tienen efecto sobre como se rocesa el texto, más otros 95 caracteres imrimibles que les siguen en la numeración (emezano or el carácter esacio). Casi toos los sistemas informáticos actuales utilizan el cóigo ASCII o una extensión comatible ara reresentar textos y ara el control e isositivos que manejan texto.
Cóigo EBCDIC EBCDIC es un cóigo binario que reresenta caracteres alfanuméricos, controles y signos e untuación. Caa carácter está comuesto or 1 byte, or eso EBCDIC efine un total e 256 caracteres. EBCDIC es un roucto e IBM ara comutaoras. Dec Hex Coe Dec Hex Coe Dec Hex Coe Dec Hex Coe 0 00 NUL 32 20 64 40 sace 96 60-1 01 SOH 33 21 65 41 97 61 / 2 02 STX 34 22 66 42 98 62 3 03 ETX 35 23 67 43 99 63 4 04 36 24 68 44 100 64 5 05 HT 37 25 LF 69 45 101 65 6 06 38 26 ETB 70 46 102 66 7 07 DEL 39 27 ESC 71 47 103 67 8 08 40 28 72 48 104 68 9 09 41 29 73 49 105 69 10 0A 42 2A 74 4A [ 106 6A 11 0B VT 43 2B 75 4B. 107 6B, 12 0C FF 44 2C 76 4C < 108 6C % 13 0D CR 45 2D ENQ 77 4D ( 109 6D _ 14 0E SO 46 2E ACK 78 4E + 110 6E > 15 0F SI 47 2F BEL 79 4F! 111 6F? 16 10 DLE 48 30 80 50 & 112 70 17 11 49 31 81 51 113 71 18 12 50 32 SYN 82 52 114 72 19 13 51 33 83 53 115 73 20 14 52 34 84 54 116 74 21 15 53 35 85 55 117 75 22 16 BS 54 36 86 56 118 76 23 17 55 37 EOT 87 57 119 77 24 18 CAN 56 38 88 58 120 78 25 19 EM 57 39 89 59 121 79 26 1A 58 3A 90 5A! ] 122 7A : 27 1B 59 3B 91 5B $ 123 7B # 28 1C IFS 60 3C 92 5C * 124 7C @ 29 1D IGS 61 3D NAK 93 5D ) 125 7D 30 1E IRS 62 3E 94 5E ; 126 7E = 31 1F IUS 63 3F SUB 95 5F ^ 127 7F "
Dec Hex Coe Dec Hex Coe Dec Hex Coe Dec Hex Coe 128 80 160 A0 192 C0 { 224 E0 \ 129 81 a 161 A1 ~ 193 C1 A 225 E1 130 82 b 162 A2 s 194 C2 B 226 E2 S 131 83 c 163 A3 t 195 C3 C 227 E3 T 132 84 164 A4 u 196 C4 D 228 E4 U 133 85 e 165 A5 v 197 C5 E 229 E5 V 134 86 f 166 A6 w 198 C6 F 230 E6 W 135 87 g 167 A7 x 199 C7 G 231 E7 X 136 88 h 168 A8 y 200 C8 H 232 E8 Y 137 89 i 169 A9 z 201 C9 I 233 E9 Z 138 8A 170 AA 202 CA 234 EA 139 8B 171 AB 203 CB 235 EB 140 8C 172 AC 204 CC 236 EC 141 8D 173 AD 205 CD 237 ED 142 8E 174 AE 206 CE 238 EE 143 8F 175 AF 207 CF 239 EF 144 90 176 B0 208 D0 } 240 F0 0 145 91 j 177 B1 209 D1 J 241 F1 1 146 92 k 178 B2 210 D2 K 242 F2 2 147 93 l 179 B3 211 D3 L 243 F3 3 148 94 m 180 B4 212 D4 M 244 F4 4 149 95 n 181 B5 213 D5 N 245 F5 5 150 96 o 182 B6 214 D6 O 246 F6 6 151 97 183 B7 215 D7 P 247 F7 7 152 98 q 184 B8 216 D8 Q 248 F8 8 153 99 r 185 B9 217 D9 R 249 F9 9 154 9A 186 BA 218 DA 250 FA 155 9B 187 BB 219 DB 251 FB 156 9C 188 BC 220 DC 252 FC 157 9D 189 BD 221 DD 253 FD 158 9E 190 BE 222 DE 254 FE 159 9F 191 BF 223 DF 255 FF
Bit e Paria Un bit e aria es un ígito binario que inica si el número e bits con un valor e 1 (unos) en un conjunto e bits es ar o imar. Los bits e aria conforman el métoo e etección e errores más simle. Hay os tios e bits e aria: bit e aria ar y bit e aria imar. El bit e aria ar se one a 1 si el número e unos en un conjunto e bits es imar, hacieno e esta forma que el número total e bits (atos+aria) sea ar. El bit e aria imar se one a 1 si el número e unos en un conjunto e bits es ar, hacieno e esta forma que el número total e bits (atos+aria) sea imar. La aria ar es un caso esecial el control e reunancia cíclica (CRC), one el bit e CRC se genera or el olinomio x+1. Nótese que este métoo etecta los errores, ero no los corrige (salvo en el caso e que la alabra transmitia sea e tamaño 1 bit). 7 bits e byte con bit e aria atos Par imar 0000000 00000000 00000001 1010001 10100011 10100010 1101001 11010010 11010011 1111111 11111111 11111110 Ejemlos: Tenemos el carácter original 0111001. Vemos que la trama a transmitir tiene un número ar e unos (4). Al añair el bit e aria obtenremos el siguiente carácter, que es el que se transmitirá a estino: Si usamos aria ar, ya hay un número ar e unos, or tanto se añae un 0, y transmitiremos 00111001 Si usamos aria imar, como hay un número ar e unos, hemos e añair otro 1 ara conseguir un número imar, y transmitiremos 10111001 Si se envía un ato y urante la transmisión se rouce un único error, el estinatario uee etectarlo al comrobar la aria en estino. Usano los ejemlos anteriores, y alterano un solo bit e la trama transmitia, nos quearía. Paria ar: se recibe 00110001 en vez e 00111001. Al comrobar el número e unos nos salen 3 (imar), luego se ha roucio un error. Paria imar, se recibe 10110001 en vez e 10111001. Al comrobar el número e unos nos salen 4 (ar), luego se ha roucio un error. Este métoo, aunque resulta satisfactorio en general, sólo es útil si los errores no cambian un número ar e bits a la vez, ya que un número ar e errores no afecta a la aria final e los atos.
Por tanto, el métoo e aria uee etectar un número imar e errores e transmisión. Siguieno los ejemlos anteriores, y alterano os bits en la transmisión, tenemos: Paria ar: se recibe 00110101 en vez e 00111001. Al comrobar el número e unos nos salen 4 (ar), y no etecta los errores. Paria imar, se recibe 10110101 en vez e 10111001. Al comrobar el número e unos nos salen 5 (imar), y no etecta los errores. Bit e reunancia Es un bit (o conjunto e ellos) que, a veces, se introucen eliberaamente en la transmisión o grabación e información sin ser arte e ésta, ero sirven ara etectar osibles errores. Por ejemlo, si queremos reresentar cuatro símbolos {1,2,3,4} y hacemos un cóigo sin reunancias, se necesitan os bits ara reresentarlo. Si or algún error, obtenemos otro símbolo el alfabeto, no tenemos manera e etectarlo. Si al cóigo anterior le añaimos un bit al final, se orán etectar algunos errores eterminaos. Si el bit que hemos añaio lo onemos a cero, y or un error se rouce un cambio en el último bit, se etectaría que ese símbolo recibio es un símbolo inválio. Por ejemlo si recibimos un 001 en vez e un 000, sabríamos que el símbolo recibio es erróneo uesto que no existe en nuestro alfabeto. Normalmente el valor el bit o e los bits e reunancia se one con un valor que sea función e alguno o algunos e los bits anteriores, e forma que ayue a ientificar errores e comunicación en otros bits. Habitualmente esta función es la suma o XOR e toos los bits anteriores. Cóigo e Hamming En informática, el cóigo e Hamming es un cóigo etector y corrector e errores que lleva el nombre e su inventor, Richar Hamming. En los atos coificaos en Hamming se ueen etectar errores en uno o en os bits, y también corregir errores en un solo bit. Esto reresenta una mejora resecto a los cóigos con bit e aria, que ueen etectar errores en sólo un bit, ero no ueen corregirlo. *Historia* Hamming trabajó en los laboratorios Bell en los años 40 en la comutaora el moelo V e Bell, un monstruo electromecánico basao en relés con velocia e roceso e varios Hertz. La entraa se alimentaba con tarjetas erforaas en las que, con frecuencia, se cometían errores al ser leías. En caa jornaa, los errores encontraos se inicaban meiante luces e estello ara que los oeraores uieran corregir el roblema. Fuera e las horas laborales y urante los fines e semana, cuano no había oeraores, la máquina se ejaba rearaa ara el trabajo e la siguiente jornaa. Hamming trabajano los fines e semana, se sentía frustrao caa vez que tenía que recomenzar sus rogramas ebio a la falta e fiabilia el lector e tarjetas. Los siguientes años trabajó en el roblema e error-corrección, esarrollano un arsenal e algoritmos caa vez más eficaces. En 1950 ublicó lo qué ahora se conoce como cóigo e Hamming, que aún hoy sigue sieno utilizao.
*Cóigos Pre-Hamming* Antes e los cóigos Hamming se utilizaron ciertos cóigos etectores e error, ero ninguno llegó a ser tan eficaz como los e Hamming. A continuación se escriben algunos e estos cóigos. *Paria* La aria consiste en añair un bit, enominao bit e aria, que inique si el número e los bits e valor 1 en los atos receentes es ar o imar. Si un solo bit cambiara or error en la transmisión, el mensaje cambiará e aria y el error se uee etectar (nótese que el bit one se rouzca el error uee ser el mismo bit e aria). La convención más común es que un valor e aria e 1 inica que hay un número imar e unos en los atos, y un valor e aria e 0 inica que hay un número ar e unos en los atos. La comrobación e aria no es muy robusta, ao que si cambia e forma uniforme más e un solo bit, el bit e aria será válio y el error no será etectao. Por otro lao, la aria, aunque uee etectar que hay error, no inica en qué bit se cometió. Los atos se eben esechar or entero y volverse a retransmitir. En un meio ruioso, una transmisión correcta oría tarar mucho tiemo o incluso, en el eor e los casos, no arse nunca. El chequeo e aria, aunque no es muy bueno, usa un único bit, or lo que rouce muy oca sobrecarga, y aemás ermite la corrección e ese bit si es conocia su osición. *Dos entre cinco* En los años 40 Bell utilizó un cóigo algo más sofisticao conocio como osentre-cinco. Este cóigo se basa en que caa bloque e cinco bits (conocio como enta-bit) tuviera exactamente os unos. De este moo, la comutaora oría etectar osibles errores cuano en su entraa no había exactamente os unos en caa enta-bit. Este cóigo seguía únicamente etectano errores or cambio en un solo bit; si en un mismo entabit un 0 cambiaba a 1 y un 1 cambiaba a 0, la regla e os-entre-cinco se seguía cumlieno y el error queaba sin escubrir. *Reetición* Otro cóigo utilizao consistía en reetir caa bit e atos varias veces ara asegurarse e que la transmisión era correcta. Por ejemlo, si el bit e atos que se enviará fuera un 1, un cóigo e reetición con n=3, enviaría "111". Si los tres bits recibios no eran iénticos, había un error. En un ambiente sin emasiao ruio, la mayoría e las veces solamente cambiaría un bit en caa aquete e tres bits. Por lo tanto, atos el tio 001, 010, y 100 se corresonen al bit 0, mientras que 110, 101, y 011 se corresonen con el bit 1. Es como si el bit original se obtuviera or mayoría en una "votación". Un cóigo con esta caacia e reconstruir el mensaje original en la resencia e errores se conoce como cóigo corrector e errores. Sin embargo, este cóigo no uee rearar correctamente toos los errores. En nuestro ejemlo, si el error en la transmisión rovocara el cambio simultáneo e os bits y el recetor recibiera "001", el sistema etectaría el error, ero consierano que el bit original era 0, lo cual es incorrecto. Si se aumenta el número e veces que se reite caa bit a cuatro (n=4), es osible etectar los errores en os bits ero obviamente no se orán corregir; con cinco, es osible corregir errores e os bits, ero no lo orá hacer en errores e tres bits. Por otra arte, el cóigo e la reetición es extremaamente ineficaz, ues reuce la velocia e transmisión or tres en nuestro ejemlo original y su eficacia cae rásticamente al aumentar el número e veces que caa bit se reite ara etectar y corregir más errores.
*Cóigos Hamming* Si se añaen junto al mensaje más bits etectores-correctores e error y si esos bits se ueen orenar e moo que iferentes bits e error roucen iferentes resultaos, entonces los bits erróneos orían ser ientificaos. En un conjunto e siete bits, hay sólo siete osibles errores e bit, or lo que con tres bits e control e error se oría esecificar aemás e que ocurrió un error, qué bit fue el que lo causó. Hamming estuió los esquemas e coificación existentes, incluio el e os entre cinco, y generalizó sus conclusiones. Para emezar, esarrolló una nomenclatura ara escribir el sistema, incluyeno el número e los bits e atos y el e los bits etectores-correctores e error en un bloque. Por ejemlo, la aria incluye un solo bit ara cualquier alabra e atos, así que las alabras el Cóigo ASCII que son e siete bits, Hamming las escribía como un cóigo (8.7), esto es, un total e 8 bits e los cuales 7 son atos. En el ejemlo anterior e la reetición, sería un cóigo (3.1), siguieno la misma lógica. La relación e la información es el seguno número iviio or el rimero, or nuestro ejemlo e la reetición, 1/3. Hamming también estuió los roblemas que surgían al cambiar os o más bits a la vez y escribió esto como "istancia" (ahora llamaa istancia e Hamming en su honor). La aria tiene una istancia e 2, ao que cualquier error en os bits no será etectao. La reetición (3.1)tiene una istancia e 3, ues son necesarios el cambio simultáneo e tres bits ara obtener otra alabra e cóigo. La reetición (4.1) (caa bit se reite cuatro veces) tiene una istancia e 4, así que el cambio e os bits en el mismo gruo queará sin efinir. Hamming estaba interesao en solucionar simultáneamente os roblemas: aumentar la istancia tanto como sea osible, a la vez que se aumentan al máximo los bits e información. Durante los años 40 esarrolló varios esquemas e coificación que mejoraban notablemente los cóigos existentes. La clave e toos sus sistemas era intercalar entre los bits e atos los e aria. *Hamming (7,4)* Hoy, el cóigo e Hamming se refiere al (7.4) que Hamming introujo en 1950. El cóigo e Hamming agrega tres bits aicionales e comrobación or caa cuatro bits e atos el mensaje. El algoritmo e Hamming (7.4) uee corregir cualquier error e un solo bit, y etecta toos los errores e os bits. Para un ambiente en el que el ruio uea cambiar como máximo 2 bits e 7, el cóigo Hamming (7.4) es generalmente el e éria mínima. El meio tenría que ser muy ruioso ara que se erieran más e 2 bits e caa 7 (casi el 45% e los bits transmitios), y habría que consierar seriamente cambiar a un meio e transmisión más fiable. El algoritmo es simle: 1. Toos los bits cuya osición es otencia e os se utilizan como bits e aria (osiciones 1, 2, 4, 8, 16, 32, 64, etc.). 2. Los bits el resto e osiciones son utilizaos como bits e atos (osiciones 3, 5, 6, 7, 9, 10, 11, 12, 13, 14, 15, 17, etc.).
3. Caa bit e aria se obtiene calculano la aria e alguno e los bits e atos. La osición el bit e aria etermina la secuencia e los bits que alternativamente comrueba y salta, a artir e éste, tal y como se exlica a continuación. Posición 1: comrueba 1, salta 1, comrueba 1, etc. Posición 2: comrueba 1, salta 2, comrueba 2, salta 2, comrueba 2, etc. Posición 4: comrueba 3, salta 4, comrueba 4, salta 4, comrueba 4, etc. Posición 8: comrueba 7, salta 8, comrueba 8, salta 8, comrueba 8, etc. Posición 16: comrueba 15, salta 16, comrueba 16, salta 16, comrueba 16, etc. Y así sucesivamente. k En otras alabras, el bit e aria e la osición 2 comrueba los bits en las osiciones que tengan al bit k en su reresentación binaria. Dicho a la inversa, el bit 13, or ejemlo, es chequeao or los bits 8, 4 y 1, al ser estos los e su reresentación binaria: 13=1101 (2) ; 8=1000 (2) ; 4=0100 (2) ; 1=0001 (2). Así ues en la Posición 1, comrobaríamos los bits: 3, 5, 7, 9, 11...; en la Posición 2, los bits: 3, 6, 7, 10, 11, 14, 15...-; en la Posición 4 tenríamos: 5, 6, 7, 12, 13, 14, 15... Así hasta comletar la nueva caena. Ejemlo: Consieremos la alabra e atos e 7 bits "0110101". Para ver cómo se generan y utilizan los cóigos Hamming ara etectar un error, observe las tablas siguientes. Se utiliza la ara inicar los bits e atos y la ara los e aria. En rimer lugar los bits e atos se insertan en las osiciones aroiaas y los bits e aria calculaos en caa caso usano la aria ar.
1 2 1 3 2 3 4 4 5 6 7 Palabra e atos (sin aria): 0 1 1 0 1 0 1 P 1 1 0 1 0 1 1 P 2 0 0 1 0 0 1 P 3 0 1 1 0 P 4 0 1 0 1 Palabra e atos (con aria): 1 0 0 0 1 1 0 0 1 0 1 Cálculo e los bits e aria en el cóigo Hamming La nueva alabra e atos (con los bits e aria) es ahora "10001100101". Consieremos ahora que el bit e la erecha, or error, cambia e 1 a 0. La nueva alabra e atos será ahora "10001100100"; cuano se analice el moo en que se obtienen los bits e aria en los cóigos e Hamming se observarán variaciones en la aria, lo que significará que hay error.
1 2 1 3 2 3 4 4 5 6 7 Prueba e aria Bit e aria Palabra e atos recibia: 1 0 0 0 1 1 0 0 1 0 0 1 1 1 0 1 0 1 0 Error 1 2 0 0 1 0 0 0 Error 1 3 0 1 1 0 Correcto 0 4 0 1 0 0 Error 1 Comrobación e los bits e aria (con rimer bit e la erecha cambiao) El aso final es evaluar los bits e aria (recuere que el fallo se encuentra en 7 ). El valor entero que reresentan los bits e aria es 11, lo que significa que el bit écimo rimero e la alabra e atos (bits e aria incluios) es el erróneo y necesita ser cambiao. 4 3 2 1 Binario 1 0 1 1 Decimal 8 2 1 Σ = 11 Cambiano el bit écimo rimero 10001100100 se obtiene e nuevo 10001100101. Eliminano los bits e aria e Hamming se vuelve a obtener la alabra e atos original 0110101. Observe que en la comrobación e la aria no se tienen en cuenta los bits e aria. Si el error se roujera en uno e ellos, en la comrobación sólo se etectaría un error, justo el corresoniente al bit e aria causante el mismo.
Finalmente, cuano cambien os bits, en la comrobación e aria se obtenrá un valor ecimal suerior a 11, etectánose el error; sin embargo no se orá saber las osiciones e los os bits que cambiaron. CRC Los cóigos cíclicos también se llaman CRC (Cóigos e Reunancia Cíclica) o cóigos olinómicos. Su uso está muy extenio orque ueen imlementarse en harware con mucha facilia y son muy otentes. Estos cóigos se basan en el uso e un olinomio generaor G(X) e grao r, y en el rinciio e que n bits e atos binarios se ueen consierar como los coeficientes e un olinomio e oren n-1. Por ejemlo, los atos 10111 ueen tratarse como el olinomio x 4 + x 2 + x 1 + x 0 A estos bits e atos se le añaen r bits e reunancia e forma que el olinomio resultante sea ivisible or el olinomio generaor. El recetor verificará si el olinomio recibio es ivisible or G(X). Si no lo es, habrá un error en la transmisión. Los bits e atos se ivien en bloques (llamaos frames en inglés), y a caa bloque se le calcula r, que se enomina secuencia e comrobación e bloque (Frame Check Sequence, FCS, en inglés) Los olinomios generaores más usaos son: CRC-12: x 12 + x 11 + x 3 + x 2 + x 1 + 1. Usao ara transmitir flujos e 6 bits, junto a otros 12 e reunancia. Es ecir, usa bloques e 6 bits, a los que les une un FCS que genera e 12 bits. CRC-16: x 16 + x 15 + x 2 + 1. Para flujos e 8 bits, con 16 e reunancia. Usao en Estaos Unios, rincialmente. CRC-CCITT: x 16 + x 12 + x 5 + 1. Para flujos e 8 bits, con 16 e reunancia. Usao en Euroa, rincialmente. CRC-32: x 32 + x 26 + x 23 + x 22 + x 16 + x 12 + x 11 + x 10 + x 8 + x 7 + x 5 + x 4 + x 2 + x + 1. Da una rotección extra sobre la que an los CRC e 16 bits, que suelen ar la suficiente. Se emlea or el comité e estánares e rees locales (IEEE 802) y en algunas alicaciones el Deartamento e Defensa e Estaos Unios. Si tenemos un olinomio generaor tal que G(x)=x 2 +1 oremos obtener a artir e él que el CRC es caaz e etectar toos los errores imares, genera una reunancia e 2 bits y no será caaz e etectar toos los errores obles, or ejemlo una secuencia error-válio asaría siemre inavertia. El algoritmo utilizao or el control e reunancia cíclica es el siguiente: Se añaen r bits "0" a la erecha el mensaje (esto es, se añaen tantos ceros como grao tenga el olinomio generaor). Se ivie el olinomio obtenio or el olinomio generaor. La ivisión se realiza en móulo 2, que es igual que la ivisión binaria, con os exceciones:
1 + 1 = 0 (no hay acarreo) y 0-1 = 1 (no hay acarreo) Y se añae el resto e la ivisión al olinomio original La elección el olinomio generaor es esencial si queremos etectar la mayoría e los errores que ocurran. Uno e los olinomios generaores que más se suelen utilizar es el estánar CCITT: x 16 + x 12 + x 5 + 1. Este olinomio ermite la etección e: * 100% e errores simles. * 100% e errores obles. * 100% e errores e un número imar e bits. * 100% e errores en ráfagas (en una serie sucesiva e bits) e 16 o menos bits. * 99.99% e errores en ráfagas e 18 o más bits.
Cóigo ISO 8859-1 ISO 8859-1 es una norma e la ISO que efine la coificación el alfabeto latino, incluyeno los iacríticos (como letras acentuaas, ñ, ç), y letras eseciales (como ß, Ø), necesarios ara la escritura e las siguientes lenguas originarias e Euroa occiental: afrikaans, alemán, aragonés, catalán, anés, escocés, esañol, feroés, finés, francés, gaélico, gallego, inglés, islanés, italiano, neerlanés, noruego, ortugués, sueco y vasco. También conocia como Alfabeto Latino n.º 1 o ISO Latín 1. Esta norma ertenece al gruo e juegos e caracteres e la ISO conocios como ISO-8859 que se caracterizan or oseer la coificación ASCII en su rango inicial (128 caracteres) y otros 128 caracteres ara caa coificación, con lo que en total utilizan 8 bits. Los caracteres e ISO-8859-1 son aemás los rimeros 256 caracteres el estánar ISO 10646 (Unicoe). Caracteres e ISO Latín 1 A continuación los caracteres imrimibles e la norma que no ertenecen al subconjunto ASCII: Oct Dec Hex Carac Descrición ------------------------------------------------------------------ 240 160 A0 ESPACIO DE "NO RUPTURA" 241 161 A1 SIGNO DE EXCLAMACIÓN ABIERTA 242 162 A2 SIGNO DE CENTAVO 243 163 A3 SIGNO DE LIBRA ESTERLINA 244 164 A4 SIGNO MONETARIO 245 165 A5 SIGNO DEL YEN 246 166 A6 BARRA VERTICAL PARTIDA 247 167 A7 SIGNO DE SECCIÓN 250 168 A8 DIÉRESIS 251 169 A9 SIGNO DE DERECHOS DE COPIA 252 170 AA ª INDICADOR ORDINAL FEMENINO 253 171 AB «SIGNO DE COMILLAS FRANCESAS DE APERTURA 254 172 AC SIGNO DE NEGACIÓN 255 173 AD - GUIÓN SEPARADOR DE SÍLABAS 256 174 AE SIGNO DE MARCA REGISTRADA 257 175 AF MACRÓN 260 176 B0 SIGNO DE GRADO 261 177 B1 ± SIGNO MÁS-MENOS 262 178 B2 ² SUPERÍNDICE DOS 263 179 B3 ³ SUPERÍNDICE TRES 264 180 B4 ACENTO AGUDO 265 181 B5 µ SIGNO DE MICRO 266 182 B6 SIGNO DE CALDERÓN 267 183 B7 PUNTO CENTRADO 270 184 B8 CEDILLA 271 185 B9 ¹ SUPERÍNDICE 1 272 186 BA º INDICADOR ORDINAL MASCULINO 273 187 BB» SIGNO DE COMILLAS FRANCESAS DE CIERRE 274 188 BC ¼ FRACCIÓN VULGAR DE UN CUARTO 275 189 BD ½ FRACCIÓN VULGAR DE UN MEDIO 276 190 BE ¾ FRACCIÓN VULGAR DE TRES CUARTOS 277 191 BF SIGNO DE INTERROGACIÓN ABIERTA
300 192 C0 À A MAYÚSCULA CON ACENTO GRAVE 301 193 C1 Á A MAYÚSCULA CON ACENTO AGUDO 302 194 C2 Â A MAYÚSCULA CON CIRCUNFLEJO 303 195 C3 Ã A MAYÚSCULA CON TILDE 304 196 C4 Ä A MAYÚSCULA CON DIÉRESIS 305 197 C5 Å A MAYÚSCULA CON CÍRCULO ENCIMA 306 198 C6 Æ AE MAYÚSCULA 307 199 C7 Ç C MAYÚSCULA CON CEDILLA 310 200 C8 È E MAYÚSCULA CON ACENTO GRAVE 311 201 C9 É E MAYÚSCULA CON ACENTO AGUDO 312 202 CA Ê E MAYÚSCULA CON CIRCUNFLEJO 313 203 CB Ë E MAYÚSCULA CON DIÉRESIS 314 204 CC Ì I MAYÚSCULA CON ACENTO GRAVE 315 205 CD Í I MAYÚSCULA CON ACENTO AGUDO 316 206 CE Î I MAYÚSCULA CON CIRCUNFLEJO 317 207 CF Ï I MAYÚSCULA CON DIÉRESIS 320 208 D0 Ð ETH MAYÚSCULA 321 209 D1 Ñ N MAYÚSCULA CON TILDE (EÑE) 322 210 D2 Ò O MAYÚSCULA CON ACENTO GRAVE 323 211 D3 Ó O MAYÚSCULA CON ACENTO AGUDO 324 212 D4 Ô O MAYÚSCULA CON CIRCUNFLEJO 325 213 D5 Õ O MAYÚSCULA CON TILDE 326 214 D6 Ö O MAYÚSCULA CON DIÉRESIS 327 215 D7 SIGNO DE MULTIPLICACIÓN (ASPA) 330 216 D8 Ø O MAYÚSCULA CON BARRA INCLINADA 331 217 D9 Ù U MAYÚSCULA CON ACENTO GRAVE 332 218 DA Ú U MAYÚSCULA CON ACENTO AGUDO 333 219 DB Û U MAYÚSCULA CON CIRCUNFLEJO 334 220 DC Ü U MAYÚSCULA CON DIÉRESIS 335 221 DD Ý Y MAYÚSCULA CON ACENTO AGUDO 336 222 DE Þ THORN MAYÚSCULA 337 223 DF ß S AGUDA ALEMANA 340 224 E0 à A MINÚSCULA CON ACENTO GRAVE 341 225 E1 á A MINÚSCULA CON ACENTO AGUDO 342 226 E2 â A MINÚSCULA CON CIRCUNFLEJO 343 227 E3 ã A MINÚSCULA CON TILDE 344 228 E4 ä A MINÚSCULA CON DIÉRESIS 345 229 E5 å A MINÚSCULA CON CÍRCULO ENCIMA 346 230 E6 æ AE MINÚSCULA 347 231 E7 ç C MINÚSCULA CON CEDILLA 350 232 E8 è E MINÚSCULA CON ACENTO GRAVE 351 233 E9 é E MINÚSCULA CON ACENTO AGUDO 352 234 EA ê E MINÚSCULA CON CIRCUNFLEJO 353 235 EB ë E MINÚSCULA CON DIÉRESIS 354 236 EC ì I MINÚSCULA CON ACENTO GRAVE 355 237 ED í I MINÚSCULA CON ACENTO AGUDO 356 238 EE î I MINÚSCULA CON CIRCUNFLEJO 357 239 EF ï I MINÚSCULA CON DIÉRESIS 360 240 F0 ð ETH MINÚSCULA 361 241 F1 ñ N MINÚSCULA CON TILDE (EÑE) 362 242 F2 ò O MINÚSCULA CON ACENTO GRAVE 363 243 F3 ó O MINÚSCULA CON ACENTO AGUDO 364 244 F4 ô O MINÚSCULA CON CIRCUNFLEJO 365 245 F5 õ O MINÚSCULA CON TILDE 366 246 F6 ö O MINÚSCULA CON DIÉRESIS 367 247 F7 SIGNO DE DIVISIÓN 370 248 F8 ø O MINÚSCULA CON BARRA INCLINADA 371 249 F9 ù U MINÚSCULA CON ACENTO GRAVE 372 250 FA ú U MINÚSCULA CON ACENTO AGUDO 373 251 FB û U MINÚSCULA CON CIRCUNFLEJO 374 252 FC ü U MINÚSCULA CON DIÉRESIS 375 253 FD ý Y MINÚSCULA CON ACENTO AGUDO 376 254 FE þ THORN MINÚSCULA 377 255 FF ÿ Y MINÚSCULA CON DIÉRESIS