La codificación Chen – Ho es un sistema alternativo de codificación binaria para dígitos decimales que ahorra memoria .
El sistema tradicional de codificación binaria para dígitos decimales, conocido como decimal codificado en binario (BCD), usa cuatro bits para codificar cada dígito, lo que resulta en un desperdicio significativo de ancho de banda de datos binarios (ya que cuatro bits pueden almacenar 16 estados y se utilizan para almacenar solo 10), [1] incluso cuando se utiliza BCD empaquetado .
La codificación reduce los requisitos de almacenamiento de dos dígitos decimales (100 estados) de 8 a 7 bits, y los de tres dígitos decimales (1000 estados) de 12 a 10 bits utilizando solo transformaciones booleanas simples evitando operaciones aritméticas complejas como una conversión de base .
Historia
En lo que parece haber sido un descubrimiento múltiple , algunos de los conceptos detrás de lo que luego se conocería como codificación Chen-Ho fueron desarrollados independientemente por Theodore M. Hertz en 1969 [2] y por Tien Chi Chen (陳 天機) (1928–) [ 3] [4] [5] [6] en 1971.
Hertz de Rockwell presentó una patente para su codificación en 1969, que fue concedida en 1971. [2]
Chen discutió por primera vez sus ideas con Irving Tze Ho (何宜慈) (1921-2003) [7] [8] [9] [10] en 1971. Chen y Ho trabajaban para IBM en ese momento, aunque en diferentes ubicaciones. [11] [12] Chen también consultó con Frank Chin Tung [13] para verificar los resultados de sus teorías de forma independiente. [12] IBM presentó una patente a su nombre en 1973, que fue concedida en 1974. [14] Al menos en 1973, el trabajo anterior de Hertz debe haber sido conocido por ellos, ya que la patente cita su patente como técnica anterior . [14]
Con el aporte de Joseph D. Rutledge y John C. McPherson, [15] la versión final de la codificación Chen-Ho circuló dentro de IBM en 1974 [16] y se publicó en 1975 en la revista Communications of the ACM . [15] [17] Esta versión incluyó varias mejoras, principalmente relacionadas con la aplicación del sistema de codificación. Constituye un código de prefijo similar a Huffman .
La codificación se denomina esquema de Chen y Ho en 1975, [18] de codificación de Chen en 1982 [19] y se hizo conocido como Chen-Ho codificación o algoritmo de Chen-Ho desde 2000. [17] Después de haber presentado una patente para ello en 2001, [20] Michael F. Cowlishaw publicó un perfeccionamiento adicional de la codificación Chen-Ho conocida como codificación decimal densamente empaquetada (DPD) en IEE Proceedings - Computers and Digital Techniques en 2002. [21] [22] DPD se adoptó posteriormente como la codificación decimal utilizada en las normas de coma flotante IEEE 754-2008 e ISO / IEC / IEEE 60559: 2011 .
Solicitud
Chen notó que los dígitos del cero al siete simplemente se codificaron usando tres dígitos binarios del grupo octal correspondiente . También postuló que se podría usar una bandera para identificar una codificación diferente para los dígitos ocho y nueve, que se codificarían usando un solo bit.
En la práctica, se aplica una serie de transformaciones booleanas al flujo de bits de entrada, comprimiendo dígitos codificados en BCD de 12 bits por tres dígitos a 10 bits por tres dígitos. Las transformaciones invertidas se utilizan para decodificar el flujo codificado resultante en BCD. También se pueden lograr resultados equivalentes mediante el uso de una tabla de consulta .
La codificación Chen – Ho se limita a codificar conjuntos de tres dígitos decimales en grupos de 10 bits (los denominados declets ). [1] De los 1024 estados posibles mediante el uso de 10 bits, solo deja 24 estados sin usar [1] ( los bits de indiferencia se establecen normalmente en 0 al escribir y se ignoran al leer). Con solo un 0,34% de desperdicio, proporciona una codificación un 20% más eficiente que BCD con un dígito en 4 bits. [12] [17]
Tanto Hertz como Chen también propusieron esquemas de codificación similares, pero menos eficientes, para comprimir conjuntos de dos dígitos decimales (que requieren 8 bits en BCD) en grupos de 7 bits. [2] [12]
Los conjuntos más grandes de dígitos decimales se pueden dividir en grupos de tres y dos dígitos. [2]
Las patentes también discuten la posibilidad de adaptar el esquema a dígitos codificados en cualquier otro código decimal que no sea 8-4-2-1 BCD , [2] como fe Exceso-3 , [2] Exceso-6 , Jump-at-2 , Jump-at-8 , Gray , Glixon , O'Brien type-I y código Gray-Stibitz . [a] Los mismos principios también podrían aplicarse a otras bases.
En 1973, una cierta forma de Chen Ho-codificación parece haber sido utilizado en el hardware de conversión de direcciones de la opcional IBM 7070 / 7074 función de emulación para el IBM System / 370 modelo 165 y 370 Modelo 168 ordenadores. [23] [24]
Una aplicación destacada utiliza un registro de 128 bits para almacenar 33 dígitos decimales con un exponente de tres dígitos, efectivamente no menos de lo que se podría lograr usando codificación binaria (mientras que la codificación BCD necesitaría 144 bits para almacenar el mismo número de dígitos).
Codificaciones para dos dígitos decimales
Codificación Hertz
Codificación binaria | Dígitos decimales | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Espacio de código (128 estados) | b6 | b5 | b4 | b3 | b2 | b1 | b0 | d1 | d0 | Valores codificados | Descripción | Ocurrencias (100 estados) | |
50% (64 estados) | 0 | a | B | C | D | mi | F | 0 abc | 0 def | (0–7) (0–7) | Dos dígitos más bajos | 64% (64 estados) | |
12,5% (16 estados) | 1 | 1 | 0 | C | D | mi | F | 100 c | 0 def | (8–9) (0–7) | Un dígito más bajo, un dígito más alto | 16% (16 estados) | |
12,5% (16 estados) | 1 | 0 | 1 | F | a | B | C | 0 abc | 100 f | (0–7) (8–9) | 16% (16 estados) | ||
12,5% (16 estados, 4 usados) | 1 | 1 | 1 | C | X | X | F | 100 c | 100 f | (8–9) (8–9) | Dos dígitos más altos | 4% (4 estados) | |
12,5% (16 estados, 0 usados) | 1 | 0 | 0 | X | X | X | X | 0% (0 estados) |
- Esta codificación no preserva la paridad .
Codificación temprana de Chen-Ho, método A
Codificación binaria | Dígitos decimales | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Espacio de código (128 estados) | b6 | b5 | b4 | b3 | b2 | b1 | b0 | d1 | d0 | Valores codificados | Descripción | Ocurrencias (100 estados) | |
50% (64 estados) | 0 | a | B | C | D | mi | F | 0 abc | 0 def | (0–7) (0–7) | Dos dígitos más bajos | 64% (64 estados) | |
25% (32 estados, 16 usados) | 1 | 0 | x [12] (b) [15] | C | D | mi | F | 100 c | 0 def | (8–9) (0–7) | Un dígito más bajo, un dígito más alto | 16% (16 estados) | |
12,5% (16 estados) | 1 | 1 | 0 | F | a | B | C | 0 abc | 100 f | (0–7) (8–9) | 16% (16 estados) | ||
12,5% (16 estados, 4 usados) | 1 | 1 | 1 | C | x [12] (a) [15] | x [12] (b) [15] | F | 100 c | 100 f | (8–9) (8–9) | Dos dígitos más altos | 4% (4 estados) |
- Esta codificación no preserva la paridad.
Codificación temprana de Chen-Ho, método B
Codificación binaria | Dígitos decimales | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Espacio de código (128 estados) | b6 | b5 | b4 | b3 | b2 | b1 | b0 | d1 | d0 | Valores codificados | Descripción | Ocurrencias (100 estados) | |
50% (64 estados) | 0 | a | B | C | D | mi | F | 0 abc | 0 def | (0–7) (0–7) | Dos dígitos más bajos | 64% (64 estados) | |
12,5% (16 estados) | 1 | 0 | C | 0 | D | mi | F | 100 c | 0 def | (8–9) (0–7) | Un dígito más bajo, un dígito más alto | 16% (16 estados) | |
12,5% (16 estados, 4 usados) | 1 | 0 | C | 1 | X | X | F | 100 c | 100 f | (8–9) (8–9) | Dos dígitos más altos | 4% (4 estados) | |
12,5% (16 estados) | 1 | 1 | F | 0 | a | B | C | 0 abc | 100 f | (0–7) (8–9) | Un dígito más bajo, un dígito más alto | 16% (16 estados) | |
12,5% (16 estados, 0 usados) | 1 | 1 | X | 1 | X | X | X | 0% (0 estados) |
- Esta codificación no preserva la paridad.
Codificación Chen-Ho patentada y final
Codificación binaria | Dígitos decimales | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Espacio de código (128 estados) | b6 | b5 | b4 | b3 | b2 | b1 | b0 | d1 | d0 | Valores codificados | Descripción | Ocurrencias (100 estados) | |
50% (64 estados) | 0 | a | B | C | D | mi | F | 0 abc | 0 def | (0–7) (0–7) | Dos dígitos más bajos | 64% (64 estados) | |
25,0% (32 estados, 16 usados) | 1 | 0 | x [14] (b) [15] | C | D | mi | F | 100 c | 0 def | (8–9) (0–7) | Un dígito más bajo, un dígito más alto | 16% (16 estados) | |
12,5% (16 estados) | 1 | 1 | 1 | C | a | B | F | 0 abc | 100 f | (0–7) (8–9) | 16% (16 estados) | ||
12,5% (16 estados, 4 usados) | 1 | 1 | 0 | C | x [14] (a) [15] | x [14] (b) [15] | F | 100 c | 100 f | (8–9) (8–9) | Dos dígitos más altos | 4% (4 estados) |
- Suponiendo ciertos valores para los de no importa bits (Fe 0), esta codificación es la paridad : Preservar. [14] [15]
Codificaciones para tres dígitos decimales
Codificación Hertz
Codificación binaria | Dígitos decimales | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Espacio de código (1024 estados) | b9 | b8 | b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 | d2 | d1 | d0 | Valores codificados | Descripción | Ocurrencias (1000 estados) | |
50,0% (512 estados) | 0 | a | B | C | D | mi | F | gramo | h | I | 0 abc | 0 def | 0 ghi | (0–7) (0–7) (0–7) | Tres dígitos más bajos | 51,2% (512 estados) | |
37,5% (384 estados) | 1 | 0 | 0 | C | D | mi | F | gramo | h | I | 100 c | 0 def | 0 ghi | (8–9) (0–7) (0–7) | Dos dígitos más bajos, un dígito más alto | 38,4% (384 estados) | |
1 | 0 | 1 | F | a | B | C | gramo | h | I | 0 abc | 100 f | 0 ghi | (0–7) (8–9) (0–7) | ||||
1 | 1 | 0 | I | a | B | C | D | mi | F | 0 abc | 0 def | 100 i | (0–7) (0–7) (8–9) | ||||
9.375% (96 estados) | 1 | 1 | 1 | F | 0 | 0 | I | a | B | C | 0 abc | 100 f | 100 i | (0–7) (8–9) (8–9) | Un dígito más bajo, dos dígitos más altos | 9,6% (96 estados) | |
1 | 1 | 1 | C | 0 | 1 | I | D | mi | F | 100 c | 0 def | 100 i | (8–9) (0–7) (8–9) | ||||
1 | 1 | 1 | C | 1 | 0 | F | gramo | h | I | 100 c | 100 f | 0 ghi | (8–9) (8–9) (0–7) | ||||
3,125% (32 estados, 8 usados) | 1 | 1 | 1 | C | 1 | 1 | F | ( 0 ) | ( 0 ) | I | 100 c | 100 f | 100 i | (8–9) (8–9) (8–9) | Tres dígitos más altos, a los bits b2 y b1 no les importa | 0,8% (8 estados) |
- Esta codificación no preserva la paridad.
Codificación temprana de Chen-Ho
Codificación binaria | Dígitos decimales | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Espacio de código (1024 estados) | b9 | b8 | b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 | d2 | d1 | d0 | Valores codificados | Descripción | Ocurrencias (1000 estados) | |
50,0% (512 estados) | 0 | a | B | C | D | mi | F | gramo | h | I | 0 abc | 0 def | 0 ghi | (0–7) (0–7) (0–7) | Tres dígitos más bajos | 51,2% (512 estados) | |
37,5% (384 estados) | 1 | 0 | 0 | C | D | mi | F | gramo | h | I | 100 c | 0 def | 0 ghi | (8–9) (0–7) (0–7) | Dos dígitos más bajos, un dígito más alto | 38,4% (384 estados) | |
1 | 0 | 1 | F | gramo | h | I | a | B | C | 0 abc | 100 f | 0 ghi | (0–7) (8–9) (0–7) | ||||
1 | 1 | 0 | I | a | B | C | D | mi | F | 0 abc | 0 def | 100 i | (0–7) (0–7) (8–9) | ||||
9.375% (96 estados) | 1 | 1 | 1 | 0 | 0 | F | I | a | B | C | 0 abc | 100 f | 100 i | (0–7) (8–9) (8–9) | Un dígito más bajo, dos dígitos más altos | 9,6% (96 estados) | |
1 | 1 | 1 | 0 | 1 | I | C | D | mi | F | 100 c | 0 def | 100 i | (8–9) (0–7) (8–9) | ||||
1 | 1 | 1 | 1 | 0 | C | F | gramo | h | I | 100 c | 100 f | 0 ghi | (8–9) (8–9) (0–7) | ||||
3,125% (32 estados, 8 usados) | 1 | 1 | 1 | 1 | 1 | C | F | I | ( 0 ) | ( 0 ) | 100 c | 100 f | 100 i | (8–9) (8–9) (8–9) | Tres dígitos más altos, a los bits b1 y b0 no les importa | 0,8% (8 estados) |
- Esta codificación no preserva la paridad.
Codificación Chen-Ho patentada
Codificación binaria | Dígitos decimales | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Espacio de código (1024 estados) | b9 | b8 | b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 | d2 | d1 | d0 | Valores codificados | Descripción | Ocurrencias (1000 estados) | |
50,0% (512 estados) | 0 | a | B | D | mi | gramo | h | C | F | I | 0 abc | 0 def | 0 ghi | (0–7) (0–7) (0–7) | Tres dígitos más bajos | 51,2% (512 estados) | |
37,5% (384 estados) | 1 | 0 | 0 | D | mi | gramo | h | C | F | I | 100 c | 0 def | 0 ghi | (8–9) (0–7) (0–7) | Dos dígitos más bajos, un dígito más alto | 38,4% (384 estados) | |
1 | 0 | 1 | a | B | gramo | h | C | F | I | 0 abc | 100 f | 0 ghi | (0–7) (8–9) (0–7) | ||||
1 | 1 | 0 | D | mi | a | B | C | F | I | 0 abc | 0 def | 100 i | (0–7) (0–7) (8–9) | ||||
9.375% (96 estados) | 1 | 1 | 1 | 1 | 0 | a | B | C | F | I | 0 abc | 100 f | 100 i | (0–7) (8–9) (8–9) | Un dígito más bajo, dos dígitos más altos | 9,6% (96 estados) | |
1 | 1 | 1 | 0 | 1 | D | mi | C | F | I | 100 c | 0 def | 100 i | (8–9) (0–7) (8–9) | ||||
1 | 1 | 1 | 0 | 0 | gramo | h | C | F | I | 100 c | 100 f | 0 ghi | (8–9) (8–9) (0–7) | ||||
3,125% (32 estados, 8 usados) | 1 | 1 | 1 | 1 | 1 | ( 0 ) | ( 0 ) | C | F | I | 100 c | 100 f | 100 i | (8–9) (8–9) (8–9) | Tres dígitos más altos, a los bits b4 y b3 no les importa | 0,8% (8 estados) |
- Esta codificación no preserva la paridad. [14]
Codificación final Chen-Ho
Codificación binaria | Dígitos decimales | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Espacio de código (1024 estados) | b9 | b8 | b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 | d2 | d1 | d0 | Valores codificados | Descripción | Ocurrencias (1000 estados) | |
50,0% (512 estados) | 0 | a | B | C | D | mi | F | gramo | h | I | 0 abc | 0 def | 0 ghi | (0–7) (0–7) (0–7) | Tres dígitos más bajos | 51,2% (512 estados) | |
37,5% (384 estados) | 1 | 0 | 0 | C | D | mi | F | gramo | h | I | 100 c | 0 def | 0 ghi | (8–9) (0–7) (0–7) | Dos dígitos más bajos, un dígito más alto | 38,4% (384 estados) | |
1 | 0 | 1 | C | a | B | F | gramo | h | I | 0 abc | 100 f | 0 ghi | (0–7) (8–9) (0–7) | ||||
1 | 1 | 0 | C | D | mi | F | a | B | I | 0 abc | 0 def | 100 i | (0–7) (0–7) (8–9) | ||||
9.375% (96 estados) | 1 | 1 | 1 | C | 0 | 0 | F | a | B | I | 0 abc | 100 f | 100 i | (0–7) (8–9) (8–9) | Un dígito más bajo, dos dígitos más altos | 9,6% (96 estados) | |
1 | 1 | 1 | C | 0 | 1 | F | D | mi | I | 100 c | 0 def | 100 i | (8–9) (0–7) (8–9) | ||||
1 | 1 | 1 | C | 1 | 0 | F | gramo | h | I | 100 c | 100 f | 0 ghi | (8–9) (8–9) (0–7) | ||||
3,125% (32 estados, 8 usados) | 1 | 1 | 1 | C | 1 | 1 | F | ( 0 ) | ( 0 ) | I | 100 c | 100 f | 100 i | (8–9) (8–9) (8–9) | Tres dígitos más altos, a los bits b2 y b1 no les importa | 0,8% (8 estados) |
- Esta codificación no preserva la paridad. [15]
Eficiencia de almacenamiento
BCD | Bits necesarios | Diferencia de bits | |||||||
---|---|---|---|---|---|---|---|---|---|
Dígitos | Estados | Bits | Espacio de código binario | Codificación binaria [A] | Codificación de 2 dígitos [B] | Codificación de 3 dígitos [C] | Codificación mixta | Mixto vs binario | Mixto vs.BCD |
1 | 10 | 4 | dieciséis | 4 | (7) | (10) | 4 [1 × A] | 0 | 0 |
2 | 100 | 8 | 128 | 7 | 7 | (10) | 7 [1 × B] | 0 | −1 |
3 | 1000 | 12 | 1024 | 10 | (14) | 10 | 10 [1 × C] | 0 | −2 |
4 | 10 000 | dieciséis | 16 384 | 14 | 14 | (20) | 14 [2 × B] | 0 | −2 |
5 | 100 000 | 20 | 131 072 | 17 | (21) | (20) | 17 [1 × C + 1 × B] | 0 | −3 |
6 | 1 000 000 | 24 | 1 048 576 | 20 | 21 | 20 | 20 [2 × C] | 0 | −4 |
7 | 10 000 000 | 28 | 16 777 216 | 24 | (28) | (30) | 24 [2 × C + 1 × A] | 0 | −4 |
8 | 100 000 000 | 32 | 134 217 728 | 27 | 28 | (30) | 27 [2 × C + 1 × B] | 0 | −5 |
9 | 1 000 000 000 | 36 | 1 073 741 824 | 30 | (35) | 30 | 30 [3 × C] | 0 | −6 |
10 | 10 000 000 000 | 40 | 17 179 869 184 | 34 | 35 | (40) | 34 [3 × C + 1 × A] | 0 | −6 |
11 | 100 000 000 000 | 44 | 137 438 953 472 | 37 | (42) | (40) | 37 [3 × C + 1 × B] | 0 | −7 |
12 | 1 000 000 000 000 | 48 | 1 099 511 627 776 | 40 | 42 | 40 | 40 [4 × C] | 0 | −8 |
13 | 10 000 000 000 000 | 52 | 17 592 186 044 416 | 44 | (49) | (50) | 44 [4 × C + 1 × A] | 0 | −8 |
14 | 100 000 000 000 000 | 56 | 140 737 488 355 328 | 47 | 49 | (50) | 47 [4 × C + 1 × B] | 0 | −9 |
15 | 1 000 000 000 000 000 | 60 | 1 125 899 906 842 624 | 50 | (56) | 50 | 50 [5 × C] | 0 | −10 |
dieciséis | 10 000 000 000 000 000 | 64 | 18 014 398 509 481 984 | 54 | 56 | (60) | 54 [5 × C + 1 × A] | 0 | −10 |
17 | 100 000 000 000 000 000 | 68 | 144 115 188 075 855 872 | 57 | (63) | (60) | 57 [5 × C + 1 × B] | 0 | −11 |
18 | 1 000 000 000 000 000 000 | 72 | 1 152 921 504 606 846 976 | 60 | 63 | 60 | 60 [6 × C] | 0 | −12 |
19 | 10 000 000 000 000 000 000 | 76 | 18 de 446 744 073 709 551 616 | 64 | (70) | (70) | 64 [6 × C + 1 × A] | 0 | −12 |
20 | ... | 80 | ... | 67 | 70 | (70) | 67 [6 × C + 1 × B] | 0 | −13 |
21 | ... | 84 | ... | 70 | (77) | 70 | 70 [7 × C] | 0 | −14 |
22 | ... | 88 | ... | 74 | 77 | (80) | 74 [7 × C + 1 × A] | 0 | −14 |
23 | ... | 92 | ... | 77 | (84) | (80) | 77 [7 × C + 1 × B] | 0 | −15 |
24 | ... | 96 | ... | 80 | 84 | 80 | 80 [8 × C] | 0 | −16 |
25 | ... | 100 | ... | 84 | (91) | (90) | 84 [8 × C + 1 × A] | 0 | −16 |
26 | ... | 104 | ... | 87 | 91 | (90) | 87 [8 × C + 1 × B] | 0 | −17 |
27 | ... | 108 | ... | 90 | (98) | 90 | 90 [9 × C] | 0 | −18 |
28 | ... | 112 | ... | 94 | 98 | (100) | 94 [9 × C + 1 × A] | 0 | −18 |
29 | ... | 116 | ... | 97 | (105) | (100) | 97 [9 × C + 1 × B] | 0 | −19 |
30 | ... | 120 | ... | 100 | 105 | 100 | 100 [10 × C] | 0 | −20 |
31 | ... | 124 | ... | 103 | (112) | (110) | 104 [10 × C + 1 × A] | +1 | −20 |
32 | ... | 128 | ... | 107 | 112 | (110) | 107 [10 × C + 1 × B] | 0 | −21 |
33 | ... | 132 | ... | 110 | (119) | 110 | 110 [11 × C] | 0 | −22 |
34 | ... | 136 | ... | 113 | 119 | (120) | 114 [11 × C + 1 × A] | +1 | −22 |
35 | ... | 140 | ... | 117 | (126) | (120) | 117 [11 × C + 1 × B] | 0 | −23 |
36 | ... | 144 | ... | 120 | 126 | 120 | 120 [12 × C] | 0 | −24 |
37 | ... | 148 | ... | 123 | (133) | (130) | 124 [12 × C + 1 × A] | +1 | −24 |
38 | ... | 152 | ... | 127 | 133 | (130) | 127 [12 × C + 1 × B] | 0 | −25 |
... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
Ver también
- Decimal codificado en binario (BCD)
- Decimal densamente empaquetado (DPD)
- DEC RADIX 50 / MOD40
- IBM SQUOZE
- BCD empaquetado
- Formato de transformación Unicode (UTF) (esquema de codificación similar)
- Código Huffman de longitud limitada
Notas
- ^ Algunos códigos decimales de 4 bits son particularmente adecuados como alternativas al código BCD 8-4-2-1 : el código Jump-at-8 usa los mismos valores para los estados ordenados 0 a 7, mientras que en Gray BCD y Glixon codifica los valores para los estados 0 a 7 siguen siendo del mismo conjunto, pero ordenados de manera diferente (que, sin embargo, es transparente para lascodificacionesHertz, Chen-Ho o decimal densamente empaquetada (DPD), ya que pasan a través de los bits sin alteraciones) . En estos cuatro códigos, el bit más significativo se puede utilizar como una bandera que denota valores "grandes". Para los dos valores "grandes", todos los bits menos uno permanecen estáticos (los dos bits del medio son siempre cero para 8-4-2-1 y uno para el código Jump-at-8, mientras que para el código BCD gris se establece un bit y el otro se borra, mientras que para el código Glixon los dos bits inferiores son siempre cero y un bit invertido, por lo que los dos valores "grandes" se intercambian de forma transparente), lo que requiere solo adaptaciones menores en la codificación. También se pueden dividir convenientemente otros tres códigos en grupos de ocho y dos estados, que contienen valores de dos rangos de patrones de bits consecutivos. En el caso de los códigos y Excess-6 BCD y Jump-at-2 , el bit más significativo aún se puede usar para distinguir entre los dos grupos, sin embargo, en comparación con el código Jump-at-8, el grupo de pequeños Los valores ahora contienen solo dos estados y el grupo más grande contiene los ocho valores más grandes. En el caso del código O'Brien tipo I y Gray-Stibitz , el siguiente bit más significativo puede servir como un bit indicador, y los bits restantes forman nuevamente dos grupos de valores consecutivos. Por tanto, estas diferencias siguen siendo transparentes para la codificación.
Referencias
- ↑ a b c Muller, Jean-Michel; Brisebarre, Nicolás; de Dinechin, Florent; Jeannerod, Claude-Pierre; Lefèvre, Vincent; Melquiond, Guillaume; Revol, Nathalie; Stehlé, Damien; Torres, Serge (2010). Manual de aritmética de coma flotante (1 ed.). Birkhäuser . doi : 10.1007 / 978-0-8176-4705-6 . ISBN 978-0-8176-4704-9. LCCN 2009939668 .
- ^ a b c d e f g h Hertz, Theodore M. (2 de noviembre de 1971) [15 de diciembre de 1969]. "Sistema para el almacenamiento compacto de números decimales" (Patente). Whittier, California, EE.UU .: North American Rockwell Corporation . Patente de Estados Unidos US3618047A . Consultado el 18 de julio de 2018 .(8 páginas) [1] [2] (NB. Esta patente vencida analiza un sistema de codificación muy similar al Chen-Ho, también citado como estado de la técnica en la patente Chen-Ho ).
- ^ "Escuchamos eso ..." Physics Today . 12 (2). Instituto Americano de Física (AIP). 1959. pág. 62. doi : 10.1063 / 1.3060696 . ISSN 0031-9228 . Archivado desde el original el 24 de junio de 2020 . Consultado el 24 de junio de 2020 . (1 pagina)
- ^ Parker, David (2003). "Miembro honorario - una mención - profesor Chen Tien Chi" (PDF) . Lista de becarios honorarios. La Universidad China de Hong Kong (CUHK). Archivado (PDF) desde el original el 25 de diciembre de 2014 . Consultado el 24 de junio de 2020 . (2 páginas)
- ^ "CHEN Tien Chi" . La Universidad China de Hong Kong (CUHK). 2013-01-12. Archivado desde el original el 23 de octubre de 2015 . Consultado el 7 de febrero de 2016 .
- ^ Wong, Andrew WF (2014-08-15) [2014-07-04, 2014-06-23, 2013-09-16, 2007-07-16, 2007-06-07, 2007-06-04, 2007- 20/05, 16/02/2007]. 陳 天機 Chen Tien Chi: 如夢 令 Ru Meng Ling (como si estuviera soñando). Poemas chinos clásicos en inglés (en chino e inglés). Traducido por Hongfa (宏 發), Huang (黃). Archivado desde el original el 25 de junio de 2020 . Consultado el 25 de junio de 2020 .
- ^ "Científico encargado de la tarea de establecer un parque industrial orientado a la ciencia" . Boletín de ciencia . 11 (2). Taipei, Taiwán: Consejo Nacional de Ciencias . 1979-02-01. pag. 1. ISSN 1607-3509 . OCLC 1658005 . Archivado desde el original el 25 de junio de 2020 . Consultado el 24 de junio de 2020 .(1 página) [3]
- ^ Tseng, Li-Ling (1 de abril de 1988). "Liderazgo de alta tecnología: Irving T. Ho" . Información de Taiwán . Archivado desde el original el 8 de febrero de 2016 . Consultado el 8 de febrero de 2016 . [4]
- ^ "Silicon Valley de Taiwán: la evolución del parque industrial de Hsinchu" . Instituto Freeman Spogli de Estudios Internacionales . Universidad de Stanford , Stanford, California, Estados Unidos. 2000-01-11. Archivado desde el original el 26 de junio de 2020 . Consultado el 2 de mayo de 2017 .
- ^ "Irving T. Ho" . Noticias de San José Mercury . 2003-04-26. Archivado desde el original el 25 de junio de 2020 . Consultado el 25 de junio de 2020 .
- ^ Chen, Tien Chi (12 de marzo de 1971). Esquema de conversión de entero decimal-binario (Nota interna de Irving Tze Ho). Laboratorio de Investigación IBM San José, San José, California, EE . UU .: IBM .
- ^ a b c d e f g h yo j Chen, Tien Chi (29 de marzo de 1971). Compresión de números decimales (PDF) (Nota interna de Irving Tze Ho). Laboratorio de Investigación IBM San José, San José, California, EE . UU .: IBM . págs. 1–4. Archivado (PDF) desde el original el 17 de octubre de 2012 . Consultado el 7 de febrero de 2016 . (4 páginas)
- ^ IBM 资深 专家 Frank Tung 博士 8 月 4 日 来 我 校 演讲[El Dr. Frank Tung, experto senior de IBM, vino a nuestra escuela el 4 de agosto para dar un discurso] (en chino e inglés). Guangzhou, China: Universidad Tecnológica del Sur de China (SCUT). 2004-08-04. Archivado desde el original el 8 de diciembre de 2004 . Consultado el 6 de febrero de 2016 .
- ^ a b c d e f g h yo Chen, Tien Chi ; Ho, Irving Tze (15 de octubre de 1974) [18 de junio de 1973]. Escrito en San José, California, EE. UU. Y Poughkeepsie, Nueva York, EE. UU. "Aparato de conversión decimal codificado en binario" (Patente). Armonk, Nueva York, Estados Unidos: International Business Machines Corporation (IBM). Patente de Estados Unidos US3842414A . Consultado el 18 de julio de 2018 .(14 páginas) [5] [6] (NB. Esta patente vencida se trata del algoritmo de Chen-Ho).
- ^ a b c d e f g h yo j k l Chen, Tien Chi ; Ho, Irving Tze (enero de 1975) [abril de 1974]. "Representación eficiente de almacenamiento de datos decimales" . Comunicaciones de la ACM . Laboratorio de Investigación de IBM San José, San José, California, EE. UU. Y División de Productos de Sistemas de IBM, Poughkeepsie / East Fishkill, Nueva York, EE. UU .: Asociación de Maquinaria de Computación . 18 (1): 49–52. doi : 10.1145 / 360569.360660 . ISSN 0001-0782 . S2CID 14301378 . Archivado desde el original el 24 de junio de 2020 . Consultado el 24 de junio de 2020 . (4 páginas)
- ^ Chen, Tien Chi ; Ho, Irving Tze (25 de junio de 1974). "Representación eficiente de almacenamiento de datos decimales". Informe de investigación RJ 1420 (Informe técnico). Laboratorio de Investigación IBM San José, San José, California, EE . UU .: IBM .
- ^ a b c d Cowlishaw, Michael Frederic (2014) [junio de 2000]. "Un resumen de la codificación de datos decimales de Chen-Ho" . IBM . Archivado desde el original el 24 de septiembre de 2015 . Consultado el 7 de febrero de 2016 .
- ^ Smith, Alan Jay (agosto de 1975) [abril de 1975]. "Comentarios sobre un artículo de TC Chen e IT Ho" . Comunicaciones de la ACM . Universidad de California , Berkeley, California, Estados Unidos. 18 (8): 463. doi : 10.1145 / 360933.360986 . eISSN 1557-7317 . ISSN 0001-0782 . S2CID 20910959 . CODEN CACMA2 . Archivado desde el original el 3 de junio de 2020 . Consultado el 3 de junio de 2020 . (1 página) (NB. Una publicación que también analiza las alternativas y variaciones de Chen-Ho).
- ^ Sacks-Davis, Ron (1 de noviembre de 1982) [enero de 1982]. "Aplicaciones de las representaciones numéricas redundantes a la aritmética decimal" (PDF) . The Computer Journal . Departamento de Ciencias de la Computación, Universidad de Monash , Clayton, Victoria, Australia: Wiley Heyden Ltd . 25 (4): 471–477. doi : 10.1093 / comjnl / 25.4.471 . Archivado desde el original (PDF) el 24 de junio de 2020 . Consultado el 24 de junio de 2020 . (7 páginas)
- ^ Cowlishaw, Michael Frederic (25 de febrero de 2003) [20 de mayo de 2002, 27 de enero de 2001]. Escrito en Coventry, Reino Unido. "Codificador / decodificador decimal a binario" (Patente). Armonk, Nueva York, Estados Unidos: International Business Machines Corporation (IBM). Patente de Estados Unidos US6525679B1 . Consultado el 18 de julio de 2018.(6 páginas) [7] y Cowlishaw, Michael Frederic (7 de noviembre de 2007) [14 de enero de 2004, 14 de agosto de 2002, 24 de septiembre de 2001, 27 de enero de 2001]. Escrito en Winchester, Hampshire, Reino Unido. "Codificador / decodificador decimal a binario" (Patente). Armonk, Nueva York, Estados Unidos: International Business Machines Corporation (IBM). Patente europea EP1231716A2 . Consultado el 18 de julio de 2018 .(9 páginas) [8] [9] [10] (NB. Esta patente sobre DPD también analiza el algoritmo de Chen-Ho).
- ^ Cowlishaw, Michael Frederic (7 de agosto de 2002) [mayo de 2002]. "Codificación decimal densamente empaquetada" . Actas de la IEE - Computadoras y técnicas digitales . Londres, Reino Unido: Institución de ingenieros eléctricos (IEE). 149 (3): 102-104. doi : 10.1049 / ip-cdt: 20020407 . ISSN 1350-2387 . Consultado el 7 de febrero de 2016 . (3 páginas)
- ^ Cowlishaw, Michael Frederic (13 de febrero de 2007) [03 de octubre de 2000]. "Un resumen de la codificación decimal densamente empaquetada" . IBM . Archivado desde el original el 24 de septiembre de 2015 . Consultado el 7 de febrero de 2016 .
- ^ Savard, John JG (2018) [2007]. "Codificación de Chen-Ho y decimal densamente empaquetado" . quadibloc . Archivado desde el original el 3 de julio de 2018 . Consultado el 16 de julio de 2018 .
- ^ Función de compatibilidad 7070/7074 para IBM System / 370 Modelos 165, 165 II y 168 (PDF) (2 ed.). IBM . Junio de 1973 [1970]. GA22-6958-1 (expediente No. 5 / 370-13). Archivado (PDF) desde el original el 22 de julio de 2018 . Consultado el 21 de julio de 2018 . (31 + 5 páginas)
Otras lecturas
- Bonten, Jo HM (6 de octubre de 2009) [5 de octubre de 2006]. "Codificación decimal empaquetada IEEE-754-2008" . Archivado desde el original el 11 de julio de 2018 . Consultado el 11 de julio de 2018 .
- Savard, John JG (2018) [2001]. "Armadura Base-26" . quadibloc . Archivado desde el original el 21 de julio de 2018 . Consultado el 21 de julio de 2018 .
- Rinaldi, Russell G .; Moore, Brian B. (21 de marzo de 1967) [30 de junio de 1964]. Escrito en Poughkeepsie & New Paltz, Nueva York, EE. UU. "Compresión / expansión de datos y procesamiento de datos comprimidos" (Patente). Nueva York, Estados Unidos: International Business Machines Corporation (IBM). Patente de Estados Unidos US3310786A . Consultado el 18 de julio de 2018.(60 páginas) [11] , Rinaldi, Russell G .; Moore, Brian B. (20 de mayo de 1969) [19 de enero de 1967, 30 de junio de 1964]. Escrito en Poughkeepsie & New Paltz, Nueva York, EE. UU. "Sumador digital en serie que emplea un formato de datos comprimidos" (Patente). Nueva York, Estados Unidos: International Business Machines Corporation (IBM). Patente de Estados Unidos US3445641A . Consultado el 18 de julio de 2018.(40 páginas) [12] y Rinaldi, Russell G .; Moore, Brian B. (11 de marzo de 1969) [19 de enero de 1967, 30 de junio de 1964]. Escrito en Poughkeepsie & New Paltz, Nueva York, EE. UU. "Compresión / expansión de datos y procesamiento de datos comprimidos" (Patente). Nueva York, Estados Unidos: International Business Machines Corporation (IBM). Patente de Estados Unidos US3432811A . Consultado el 18 de julio de 2018 .(11 páginas) [13] (NB. Tres patentes vencidas citadas en las patentes de Hertz y Chen-Ho ).
- Bender, Richard R .; Galage, Dominick J. (agosto de 1961). "Control del modo de embalaje". Boletín de divulgación técnica de IBM . 4 (3): 61–63.
- Tilem, JY (diciembre de 1962). "Medios de empaquetado y desempaquetado de datos". Boletín de divulgación técnica de IBM . 5 (7): 48–49.
- Lengyel, EJ; McMahon, RF (marzo de 1967). "Generador de direcciones de decimal directo a binario para memorias pequeñas" . Boletín de divulgación técnica de IBM . 9 (10): 1347 . Consultado el 3 de junio de 2020 .