释义 |
- History
- Application
- Encodings for three decimal digits Hertz encoding Early Chen–Ho encoding Patented Chen–Ho encoding Final Chen–Ho encoding
- Encodings for two decimal digits Hertz encoding Early Chen–Ho encoding, method A Early Chen–Ho encoding, method B Patented Chen–Ho encoding
- See also
- References
- Further reading
{{short description|an efficient alternate system of binary encoding for decimal digits}}{{bots|deny=Citation bot}}Chen–Ho encoding is a memory-efficient alternate system of binary encoding for decimal digits. The traditional system of binary encoding for decimal digits, known as binary-coded decimal (BCD), uses four bits to encode each digit, resulting in significant wastage of binary data bandwidth (since four bits can store 16 states and are being used to store only 10). The encoding reduces the storage requirements of two decimal digits (100 states) from 8 to 7 bits, and those of three decimal digits (1000 states) from 12 to 10 bits using only simple Boolean transformations avoiding any complex arithmetic operations like a base conversion. HistoryIn what appears to have been a multiple discovery, some of the concepts behind what later became known as Chen–Ho encoding were independently developed by Theodore M. Hertz in 1969[2] and by Tien Chi Chen in 1971.[3] Hertz of Rockwell filed a patent for his encoding in 1969, which was granted in 1971.[2] Chen first discussed his ideas with Irving Tze Ho[5] in 1971. Chen and Ho were both working for IBM at the time, although in different locations.[6][7] Chen also consulted with Frank C. Tung[8] to verify the results of his theories independently.[7] IBM filed a patent in their name in 1973, which was granted in 1974.[10] At least by 1973 Hertz's earlier work must have been known to them, as the patent cites his patent as prior art.[10] The final version of the Chen–Ho encoding was circulated inside IBM in 1974[12] and published in 1975 in the journal Communications of the Association for Computing Machinery (CACM).[13][14] This version included several refinements, primarily related to the application of the encoding system. It constitutes a Huffman-like prefix code. The encoding became known as Chen–Ho encoding or Chen–Ho algorithm only since 2000.[14] After having filed a patent in 2001,[16] Michael F. Cowlishaw published a further refinement of Chen–Ho encoding known as Densely Packed Decimal (DPD) encoding in IEE Proceedings – Computers and Digital Techniques in 2002.[17][18] Densely Packed Decimal has subsequently been adopted as the decimal encoding used in the IEEE 754-2008 and 2011 floating-point standards. ApplicationChen noted that the digits zero through seven were simply encoded using three binary digits of the corresponding octal group. He also postulated that one could use a flag to identify a different encoding for the digits eight and nine, which would be encoded using a single bit. In practice, a series of Boolean transformations are applied to the stream of input bits, compressing BCD encoded digits from 12 bits per three digits to 10 bits per three digits. Reversed transformations are used to decode the resulting coded stream to BCD. Equivalent results can also be achieved by the use of a look-up table. Chen–Ho encoding is limited to encoding sets of three decimal digits into groups of 10 bits (so called declets). Of the 1024 states possible by using 10 bits, it leaves only 24 states unused (with don't care bits typically set to 0 on write and ignored on read). With only 0.34% wastage it gives a 20% more efficient encoding than BCD with one digit in 4 bits.[7][14] Both Hertz and Chen also proposed similar, but less efficient, encoding schemes to compress sets of two decimal digits (requiring 8 bits in BCD) into groups of 7 bits.[2][7] Larger sets of decimal digits could by divided into three- and two-digit groups.[2] The patents also discuss the possibility to adapt the scheme to digits encoded in any other decimal codes than BCD, like f.e. Excess-3.[2] The same principles could also be applied to other bases. In 1973, some form of Chen–Ho encoding appears to have been utilized in the address conversion hardware of the optional IBM 7070/7074 emulation feature for the IBM System/370 Model 165 and 370 Model 168 computers.[27][28] One prominent application uses a 128-bit register to store 33 decimal digits with a three digit exponent, effectively not less than what could be achieved using binary encoding (whereas BCD encoding would need 144 bits to store the same number of digits). Storage efficiencyBCD | Necessary bits | Bit difference |
---|
Digits | States | Bits | Binary code space | Binary encoding [A] | 2-digit encoding [B] | 3-digit encoding [C] | Mixed encoding | Mixed vs. Binary | Mixed vs. BCD |
---|
1 | 10}} | 4 | 16}} | 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 | 10000}} | 16 | 16384}} | 14 | 14 | (20) | 14 [2×B] | 0 | −2 | 5 | 100000}} | 20 | 131072}} | 17 | (21) | (20) | 17 [1×C+1×B] | 0 | −3 | 6 | 1000000}} | 24 | 1048576}} | 20 | 21 | 20 | 20 [2×C] | 0 | −4 | 7 | 10000000}} | 28 | 16777216}} | 24 | (28) | (30) | 24 [2×C+1×A] | 0 | −4 | 8 | 100000000}} | 32 | 134217728}} | 27 | 28 | (30) | 27 [2×C+1×B] | 0 | −5 | 9 | 1000000000}} | 36 | 1073741824}} | 30 | (35) | 30 | 30 [3×C] | 0 | −6 | 10 | 10000000000}} | 40 | 17179869184}} | 34 | 35 | (40) | 34 [3×C+1×A] | 0 | −6 | 11 | 100000000000}} | 44 | 137438953472}} | 37 | (42) | (40) | 37 [3×C+1×B] | 0 | −7 | 12 | 1000000000000}} | 48 | 1099511627776}} | 40 | 42 | 40 | 40 [4×C] | 0 | −8 | 13 | 10000000000000}} | 52 | 17592186044416}} | 44 | (49) | (50) | 44 [4×C+1×A] | 0 | −8 | 14 | 100000000000000}} | 56 | 140737488355328}} | 47 | 49 | (50) | 47 [4×C+1×B] | 0 | −9 | 15 | 1000000000000000}} | 60 | 1125899906842624}} | 50 | (56) | 50 | 50 [5×C] | 0 | −10 | 16 | 10000000000000000}} | 64 | 18014398509481984}} | 54 | 56 | (60) | 54 [5×C+1×A] | 0 | −10 | 17 | 100000000000000000}} | 68 | 144115188075855872}} | 57 | (63) | (60) | 57 [5×C+1×B] | 0 | −11 | 18 | 1000000000000000000}} | 72 | 1152921504606846976}} | 60 | 63 | 60 | 60 [6×C] | 0 | −12 | 19 | 10000000000000000000}} | 76 | 18446744073709551616}} | 64 | (70) | (70) | 64 [6×C+1×A] | 0 | −12 | 20 | 100000000000000000000}} --> | 80 | 147573952589676412928}} --> | 67 | 70 | (70) | 67 [6×C+1×B] | 0 | −13 | 21 | 1000000000000000000000}} --> | 84 | 1180591620717411303424}} --> | 70 | (77) | 70 | 70 [7×C] | 0 | −14 | 22 | 10000000000000000000000}} --> | 88 | 18889465931478580854784}} --> | 74 | 77 | (80) | 74 [7×C+1×A] | 0 | −14 | 23 | 100000000000000000000000}} --> | 92 | 151115727451828646838272}} --> | 77 | (84) | (80) | 77 [7×C+1×B] | 0 | −15 | 24 | 1000000000000000000000000}} --> | 96 | 1208925819614629174706176}} --> | 80 | 84 | 80 | 80 [8×C] | 0 | −16 | 25 | 10000000000000000000000000}} --> | 100 | 19342813113834066795298816}} --> | 84 | (91) | (90) | 84 [8×C+1×A] | 0 | −16 | 26 | 100000000000000000000000000}} --> | 104 | 154742504910672534362390528}} --> | 87 | 91 | (90) | 87 [8×C+1×B] | 0 | −17 | 27 | 1000000000000000000000000000}} --> | 108 | 1237940039285380274899124224}} --> | 90 | (98) | 90 | 90 [9×C] | 0 | −18 | 28 | 10000000000000000000000000000}} --> | 112 | 19807040628566084398385987584}} --> | 94 | 98 | (100) | 94 [9×C+1×A] | 0 | −18 | 29 | 100000000000000000000000000000}} --> | 116 | 158456325028528675187087900672}} --> | 97 | (105) | (100) | 97 [9×C+1×B] | 0 | −19 | 30 | 1000000000000000000000000000000}} --> | 120 | 1267650600228229401496703205376}} --> | 100 | 105 | 100 | 100 [10×C] | 0 | −20 | 31 | 10000000000000000000000000000000}} --> | 124 | 10141204801825835211973625643008}} --> | 103 | (112) | (110) | 104 [10×C+1×A] | +1 | −20 | 32 | 100000000000000000000000000000000}} --> | 128 | 1.6225927682921336339157801028813e+32}} --> | 107 | 112 | (110) | 107 [10×C+1×B] | 0 | −21 | 33 | 1000000000000000000000000000000000}} --> | 132 | 1.298074214633706907132624082305e+33}} --> | 110 | (119) | 110 | 110 [11×C] | 0 | −22 | 34 | 10000000000000000000000000000000000}} --> | 136 | 1.038459371706965525706099265844e+34}} --> | 113 | 119 | (120) | 114 [11×C+1×A] | +1 | −22 | 35 | 100000000000000000000000000000000000}} --> | 140 | 1.6615349947311448411297588253504e+35}} --> | 117 | (126) | (120) | 117 [11×C+1×B] | 0 | −23 | 36 | 1000000000000000000000000000000000000}} --> | 144 | 1.3292279957849158729038070602803e+36}} --> | 120 | 126 | 120 | 120 [12×C] | 0 | −24 | 37 | 10000000000000000000000000000000000000}} --> | 148 | 1.0633823966279326983230456482243e+37}} --> | 123 | (133) | (130) | 124 [12×C+1×A] | +1 | −24 | 38 | 100000000000000000000000000000000000000}} --> | 152 | 1.7014118346046923173168730371588e+38}} --> | 127 | 133 | (130) | 127 [12×C+1×B] | 0 | −25 | … | … | … | … | … | … | … | … | … | … | Encodings for three decimal digitsHertz encodingHertz decimal data encoding for a single declet (1969 form)[2]Binary encoding | | Decimal digits |
---|
Code space (1024 states) | b9 | b8 | b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 | d2 | d1 | d0 | Values encoded | Description | Possibilities (1000 states) |
---|
50.0% (512 states) | 0 | a | b | c | d | e | f | g | h | i | 0abc | 0def | 0ghi | (0–7) (0–7) (0–7) | Three lower digits | 51.2% (512 states) | 37.5% (384 states) | 1 | 0 | 0 | c | d | e | f | g | h | i | 100c | 0def | 0ghi | (8–9) (0–7) (0–7) | Two lower digits, one higher digit | 38.4% (384 states) | 1 | 0 | 1 | f | a | b | c | g | h | i | 0abc | 100f | 0ghi | (0–7) (8–9) (0–7) | 1 | 1 | 0 | i | a | b | c | d | e | f | 0abc | 0def | 100i | (0–7) (0–7) (8–9) | 9.375% (96 states) | 1 | 1 | 1 | f | 0 | 0 | i | a | b | c | 0abc | 100f | 100i | (0–7) (8–9) (8–9) | One lower digit, two higher digits | 9.6% (96 states) | 1 | 1 | 1 | c | 0 | 1 | i | d | e | f | 100c | 0def | 100i | (8–9) (0–7) (8–9) | 1 | 1 | 1 | c | 1 | 0 | f | g | h | i | 100c | 100f | 0ghi | (8–9) (8–9) (0–7) | 3.125% (32 states, 8 used) | 1 | 1 | 1 | c | 1 | 1 | f | (0) | (0) | i | 100c | 100f | 100i | (8–9) (8–9) (8–9) | Three higher digits, bits b2 and b1 are don't care | 0.8% (8 states) | Early Chen–Ho encodingDecimal data encoding for a single declet (early 1971 form)[7]Binary encoding | | Decimal digits |
---|
Code space (1024 states) | b9 | b8 | b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 | d2 | d1 | d0 | Values encoded | Description | Possibilities (1000 states) |
---|
50.0% (512 states) | 0 | a | b | c | d | e | f | g | h | i | 0abc | 0def | 0ghi | (0–7) (0–7) (0–7) | Three lower digits | 51.2% (512 states) | 37.5% (384 states) | 1 | 0 | 0 | c | d | e | f | g | h | i | 100c | 0def | 0ghi | (8–9) (0–7) (0–7) | Two lower digits, one higher digit | 38.4% (384 states) | 1 | 0 | 1 | f | g | h | i | a | b | c | 0abc | 100f | 0ghi | (0–7) (8–9) (0–7) | 1 | 1 | 0 | i | a | b | c | d | e | f | 0abc | 0def | 100i | (0–7) (0–7) (8–9) | 9.375% (96 states) | 1 | 1 | 1 | 0 | 0 | f | i | a | b | c | 0abc | 100f | 100i | (0–7) (8–9) (8–9) | One lower digit, two higher digits | 9.6% (96 states) | 1 | 1 | 1 | 0 | 1 | i | c | d | e | f | 100c | 0def | 100i | (8–9) (0–7) (8–9) | 1 | 1 | 1 | 1 | 0 | c | f | g | h | i | 100c | 100f | 0ghi | (8–9) (8–9) (0–7) | 3.125% (32 states, 8 used) | 1 | 1 | 1 | 1 | 1 | c | f | i | (0) | (0) | 100c | 100f | 100i | (8–9) (8–9) (8–9) | Three higher digits, bits b2 and b1 are don't care | 0.8% (8 states) | Patented Chen–Ho encodingDecimal data encoding for a single declet (patented 1973 form)[10]Binary encoding | | Decimal digits |
---|
Code space (1024 states) | b9 | b8 | b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 | d2 | d1 | d0 | Values encoded | Description | Possibilities (1000 states) |
---|
50.0% (512 states) | 0 | a | b | d | e | g | h | c | f | i | 0abc | 0def | 0ghi | (0–7) (0–7) (0–7) | Three lower digits | 51.2% (512 states) | 37.5% (384 states) | 1 | 0 | 0 | d | e | g | h | c | f | i | 100c | 0def | 0ghi | (8–9) (0–7) (0–7) | Two lower digits, one higher digit | 38.4% (384 states) | 1 | 0 | 1 | a | b | g | h | c | f | i | 0abc | 100f | 0ghi | (0–7) (8–9) (0–7) | 1 | 1 | 0 | d | e | a | b | c | f | i | 0abc | 0def | 100i | (0–7) (0–7) (8–9) | 9.375% (96 states) | 1 | 1 | 1 | 1 | 0 | a | b | c | f | i | 0abc | 100f | 100i | (0–7) (8–9) (8–9) | One lower digit, two higher digits | 9.6% (96 states) | 1 | 1 | 1 | 0 | 1 | d | e | c | f | i | 100c | 0def | 100i | (8–9) (0–7) (8–9) | 1 | 1 | 1 | 0 | 0 | g | h | c | f | i | 100c | 100f | 0ghi | (8–9) (8–9) (0–7) | 3.125% (32 states, 8 used) | 1 | 1 | 1 | 1 | 1 | (0) | (0) | c | f | i | 100c | 100f | 100i | (8–9) (8–9) (8–9) | Three higher digits, bits b2 and b1 are don't care | 0.8% (8 states) | Final Chen–Ho encodingChen-Ho decimal data encoding for a single declet (final 1975 form)[13][14]Binary encoding | | Decimal digits |
---|
Code space (1024 states) | b9 | b8 | b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 | d2 | d1 | d0 | Values encoded | Description | Possibilities (1000 states) |
---|
50.0% (512 states) | 0 | a | b | c | d | e | f | g | h | i | 0abc | 0def | 0ghi | (0–7) (0–7) (0–7) | Three lower digits | 51.2% (512 states) | 37.5% (384 states) | 1 | 0 | 0 | c | d | e | f | g | h | i | 100c | 0def | 0ghi | (8–9) (0–7) (0–7) | Two lower digits, one higher digit | 38.4% (384 states) | 1 | 0 | 1 | c | a | b | f | g | h | i | 0abc | 100f | 0ghi | (0–7) (8–9) (0–7) | 1 | 1 | 0 | c | d | e | f | a | b | i | 0abc | 0def | 100i | (0–7) (0–7) (8–9) | 9.375% (96 states) | 1 | 1 | 1 | c | 0 | 0 | f | a | b | i | 0abc | 100f | 100i | (0–7) (8–9) (8–9) | One lower digit, two higher digits | 9.6% (96 states) | 1 | 1 | 1 | c | 0 | 1 | f | d | e | i | 100c | 0def | 100i | (8–9) (0–7) (8–9) | 1 | 1 | 1 | c | 1 | 0 | f | g | h | i | 100c | 100f | 0ghi | (8–9) (8–9) (0–7) | 3.125% (32 states, 8 used) | 1 | 1 | 1 | c | 1 | 1 | f | (0) | (0) | i | 100c | 100f | 100i | (8–9) (8–9) (8–9) | Three higher digits, bits b2 and b1 are don't care | 0.8% (8 states) | Encodings for two decimal digitsHertz encodingHertz decimal data encoding for a single heptad (1969 form)[2]Binary encoding | | Decimal digits |
---|
Code space (128 states) | b6 | b5 | b4 | b3 | b2 | b1 | b0 | d1 | d0 | Values encoded | Description | Possibilities (100 states) |
---|
50.0% (64 states) | 0 | a | b | c | d | e | f | 0abc | 0def | (0–7) (0–7) | Two lower digits | 64.0% (64 states) | 12.5% (16 states) | 1 | 1 | 0 | c | d | e | f | 100c | 0def | (8–9) (0–7) | One lower digit, one higher digit | 16.0% (16 states) | 12.5% (16 states) | 1 | 0 | 1 | f | a | b | c | 0abc | 100f | (0–7) (8–9) | One lower digit, one higher digit | 16.0% (16 states) | 12.5% (16 states, 4 used) | 1 | 1 | 1 | c | x | x | f | 100c | 100f | (8–9) (8–9) | Two higher digits | 4.0% (4 states) | Early Chen–Ho encoding, method ADecimal data encoding for a single heptad (early 1971 form, method A)[7]Binary encoding | | Decimal digits |
---|
Code space (128 states) | b6 | b5 | b4 | b3 | b2 | b1 | b0 | d1 | d0 | Values encoded | Description | Possibilities (100 states) |
---|
50.0% (64 states) | 0 | a | b | c | d | e | f | 0abc | 0def | (0–7) (0–7) | Two lower digits | 64.0% (64 states) | 25.0% (32 states, 16 used) | 1 | 0 | x | c | d | e | f | 100c | 0def | (8–9) (0–7) | One lower digit, one higher digit | 16.0% (16 states) | 12.5% (16 states) | 1 | 1 | 0 | f | a | b | c | 0abc | 100f | (0–7) (8–9) | One lower digit, one higher digit | 16.0% (16 states) | 12.5% (16 states, 4 used) | 1 | 1 | 1 | c | x | x | f | 100c | 100f | (8–9) (8–9) | Two higher digits | 4.0% (4 states) | Patented Chen–Ho encodingDecimal data encoding for a single heptad (patented 1973 form)[10]Binary encoding | | Decimal digits |
---|
Code space (128 states) | b6 | b5 | b4 | b3 | b2 | b1 | b0 | d1 | d0 | Values encoded | Description | Possibilities (100 states) |
---|
50.0% (64 states) | 0 | a | b | c | d | e | f | 0abc | 0def | (0–7) (0–7) | Two lower digits | 64.0% (64 states) | 25.0% (32 states, 16 used) | 1 | 0 | x | c | d | e | f | 100c | 0def | (8–9) (0–7) | One lower digit, one higher digit | 16.0% (16 states) | 12.5% (16 states) | 1 | 1 | 1 | c | a | b | f | 0abc | 100f | (0–7) (8–9) | One lower digit, one higher digit | 16.0% (16 states) | 12.5% (16 states, 4 used) | 1 | 1 | 0 | c | x | x | f | 100c | 100f | (8–9) (8–9) | Two higher digits | 4.0% (4 states) | See also- Binary-coded decimal (BCD)
- Densely packed decimal (DPD)
- Unicode transformation format (UTF) (similar encoding scheme)
- Length-limited Huffman code
References1. ^1 {{cite web |title=CHEN Tien Chi |url=http://www.cse.cuhk.edu.hk/v7/en/people/tcchen.html |access-date=2016-02-07 |dead-url=no |archive-url=https://web.archive.org/web/20151023061814/http://www.cse.cuhk.edu.hk/v7/en/people/tcchen.html |archive-date=2015-10-23}} 2. ^1 {{cite web |title=High-Tech Leadership: Irving T. Ho |author-last=Tseng |author-first=Li-Ling |date=1988-04-01 |publisher=Taiwan Info |url=http://taiwaninfo.nat.gov.tw/ct.asp?xItem=105983&ctNode=124 |access-date=2016-02-08 |dead-url=no |archive-url=https://web.archive.org/web/20160208172221/http://taiwaninfo.nat.gov.tw/ct.asp?xItem=105983&ctNode=124 |archive-date=2016-01-01}} 3. ^1 {{cite web |title=IBM资深专家Frank Tung博士8月4日来我校演讲 |url=http://www2.scut.edu.cn/software/news/news13.htm |access-date=2016-02-06 |dead-url=no |archive-url=https://web.archive.org/web/20041208004402/http://www2.scut.edu.cn/software/news/news13.htm |archive-date=2004-12-08}} 4. ^1 {{cite paper |author-first=Tien Chi |author-last=Chen |title=Decimal-binary integer conversion scheme |date=1971-03-12 |type=Internal memo to Irving Tze Ho |location=San Jose Research Laboratory |publisher=IBM}} 5. ^1 2 3 4 5 6 7 {{cite paper |author-first=Tien Chi |author-last=Chen |title=Decimal Number Compression |date=1971-03-29 |type=Internal memo to Irving Tze Ho |pages=1–4 |location=San Jose Research Laboratory |publisher=IBM |url=http://speleotrove.com/decimal/chen1971-memo-to-Ho.pdf |access-date=2016-02-07 |dead-url=no |archive-url=https://web.archive.org/web/20121017134315/http://speleotrove.com/decimal/chen1971-memo-to-Ho.pdf |archive-date=2012-10-17}} 6. ^1 {{cite journal |title=Storage-Efficient Representation of Decimal Data |author-first1=Tien Chi |author-last1=Chen |author-first2=Irving Tze |author-last2=Ho |date=1974-06-25 |journal=Research Report RJ 1420 |type=Technical report |location=IBM Research Lab, San Jose, USA |publisher=IBM}} 7. ^1 2 {{cite journal |title=Storage-Efficient Representation of Decimal Data |author-first1=Tien Chi |author-last1=Chen |author-first2=Irving Tze |author-last2=Ho |date=January 1975 |journal=Communications of the Association for Computing Machinery (CACM) |volume=18 |issue=1 |pages=49–52 |doi=10.1145/360569.360660 |url=http://portal.acm.org/citation.cfm?id=360660 |access-date=2016-02-07}} 8. ^1 2 3 4 {{cite web |author-first=Michael Frederic |author-last=Cowlishaw |author-link=Michael Frederic Cowlishaw |title=A Summary of Chen-Ho Decimal Data encoding |orig-year=2000 |date=2014 |publisher=IBM |url=http://speleotrove.com/decimal/chen-ho.html |access-date=2016-02-07 |dead-url=no |archive-url=https://web.archive.org/web/20150924145419/http://speleotrove.com/decimal/chen-ho.html |archive-date=2015-09-24}} 9. ^1 {{cite journal |title=Densely Packed Decimal Encoding |author-first=Michael Frederic |author-last=Cowlishaw |author-link=Michael Frederic Cowlishaw |journal=IEE Proceedings – Computers and Digital Techniques |volume=149 |issue=3 |pages=102–104 |publisher=Institution of Electrical Engineers (IEE) |date=May 2002 |issn=1350-2387 |doi=10.1049/ip-cdt:20020407 |location=London |url=http://ieeexplore.ieee.org/xpl/login.jsp?reload=true&arnumber=1008829 |access-date=2016-02-07}} 10. ^1 2 3 4 {{cite web |title=Binary coded decimal conversion apparatus |author-first1=Tien Chi |author-last1=Chen |author-first2=Irving Tze |author-last2=Ho |publisher=International Business Machines Corporation (IBM) |location=San Jose, CA, USA & Poughkeepsie, NY, USA |publication-place=Armonk, NY, USA |date=1974-10-15 |orig-year=1973-06-18 |id=US3842414A |type=US Patent |url=https://patents.google.com/patent/US3842414A |access-date=2018-07-18}} [https://patentimages.storage.googleapis.com/98/0e/62/0169530be1048f/US3842414.pdf] (NB. This patent is about the Chen–Ho algorithm.) 11. ^1 {{cite web |author-first=Michael Frederic |author-last=Cowlishaw |author-link=Michael Frederic Cowlishaw |publisher=IBM |title=A Summary of Densely Packed Decimal encoding |orig-year=2000 |date=2007-02-13 |url=http://speleotrove.com/decimal/DPDecimal.html |access-date=2016-02-07 |dead-url=no |archive-url=https://web.archive.org/web/20150924145411/http://speleotrove.com/decimal/DPDecimal.html |archive-date=2015-09-24}} 12. ^1 {{cite web |title=Decimal to binary coder/decoder |author-first=Michael Frederic |author-last=Cowlishaw |author-link=Michael Frederic Cowlishaw |publisher=International Business Machines Corporation (IBM) |location=Coventry, UK |publication-place=Armonk, NY, USA |date=2003-02-25 |orig-year=2002-05-20, 2001-01-27 |id=US6525679B1 |type=US Patent |url=https://patents.google.com/patent/US6525679B1 |access-date=2018-07-18}} [https://patentimages.storage.googleapis.com/b4/27/a6/f4ef138a335192/US6525679.pdf] and {{cite web |title=Decimal to binary coder/decoder |author-first=Michael Frederic |author-last=Cowlishaw |author-link=Michael Frederic Cowlishaw |publisher=International Business Machines Corporation (IBM) |location=Winchester, Hampshire, UK |publication-place=Armonk, NY, USA |date=2007-11-07 |orig-year=2004-01-14, 2002-08-14, 2001-09-24, 2001-01-27 |id=EP1231716A2 |type=European Patent |url=https://patents.google.com/patent/EP1231716A2/en |access-date=2018-07-18}} [https://patentimages.storage.googleapis.com/e1/0c/a1/69981125812742/EP1231716A2.pdf] [https://patentimages.storage.googleapis.com/ba/25/b6/b0ad365c086f5f/EP1231716B1.pdf] (NB. This patent about DPD also discusses the Chen–Ho algorithm.) 13. ^1 2 3 4 5 6 7 {{cite web |title=System for the compact storage of decimal numbers |author-first=Theodore M. |author-last=Hertz |location=Whittier, CA, USA |publisher=North American Rockwell Corporation |date=1971-11-02 |orig-year=1969-12-15 |id=US3618047A |type=US Patent |url=https://patents.google.com/patent/US3618047A |access-date=2018-07-18}} [https://patentimages.storage.googleapis.com/34/cb/46/fd134e38804af5/US3618047.pdf] (NB. A coding system very similar to Chen-Ho, also cited as prior art in the Chen–Ho patent.) 14. ^1 {{cite web |title=Chen-Ho Encoding and Densely Packed Decimal |author-first=John J. G. |author-last=Savard |date=2018 |orig-year=2007 |work=quadibloc |url=http://www.quadibloc.com/comp/cp020301.htm |access-date=2018-07-16 |dead-url=no |archive-url=https://web.archive.org/web/20180703002320/http://www.quadibloc.com/comp/cp020301.htm |archive-date=2018-07-16}} 15. ^1 {{cite book |title=7070/7074 Compatibility Feature for IBM System/370 Models 165, 165 II, and 168 |publisher=IBM |id=GA22-6958-1 (File No. 5/370-13) |edition=2 |date=June 1973 |orig-year=1970 |url=http://www.bitsavers.org/pdf/ibm/370/compatibility_feature/GA22-6958-1_707x_Compatibility_Feature_for_IBM-370_165_168.pdf |access-date=2018-07-21 |dead-url=no |archive-url=https://web.archive.org/web/20180722120344/http://www.bitsavers.org/pdf/ibm/370/compatibility_feature/GA22-6958-1_707x_Compatibility_Feature_for_IBM-370_165_168.pdf |archive-date=2018-07-22}}
(online), {{isbn|0-8176-4704-X}} (print) -->}}[1][2][3][4][5][6][7][8][9][10][11][12][13][14][15] }}Further reading- {{cite journal |title=Comments on a paper by T. C. Chen and I. T. Ho |author-first=Alan Jay |author-last=Smith |author-link=Alan Jay Smith |date=August 1975 |journal=Communications of the Association for Computing Machinery (CACM) |volume=18 |issue=8 |page=463 |doi=10.1145/360933.360986 |id={{CODEN|CACMA2}} |issn=0001-0782 |url=http://portal.acm.org/citation.cfm?id=360986 |access-date=2018-07-19}} (NB. A publication also discussing Chen-Ho alternatives and variations.)
- {{cite web |title=Packed Decimal Encoding IEEE-754-2008 |author-first=Jo H. M. |author-last=Bonten |orig-year=2006-10-05 |date=2009-10-06 |url=http://home.kpn.nl/jhm.bonten/computers/bitsandbytes/wordsizes/ibmpde.htm#dense4 |access-date=2018-07-11 |dead-url=no |archive-url=https://web.archive.org/web/20180711143550/http://home.kpn.nl/jhm.bonten/computers/bitsandbytes/wordsizes/ibmpde.htm#dense4 |archive-date=2018-07-11}}
- {{cite web |title=Base-26 Armor |author-first=John J. G. |author-last=Savard |date=2018 |orig-year=2001 |work=quadibloc |url=http://www.quadibloc.com/crypto/mi060301.htm |access-date=2018-07-21 |dead-url=no |archive-url=https://web.archive.org/web/20180721041840/http://www.quadibloc.com/crypto/mi060301.htm |archive-date=2018-07-21}}
- {{cite web |title=Data compression/expansion and compressed data processing |author-first1=Russell G. |author-last1=Rinaldi |author-first2=Brian B. |author-last2=Moore |location=Poughkeepsie, NY, USA & New Paltz, NY, USA |publication-place=New York, USA |publisher=International Business Machines Corporation (IBM) |date=1967-03-21 |orig-year=1964-06-30 |id=US3310786A |type=US Patent |url=https://patents.google.com/patent/US3310786A |access-date=2018-07-18}} [https://patentimages.storage.googleapis.com/98/65/5e/63a98aac4b5184/US3310786.pdf], {{cite web |title=Serial digital adder employing a compressed data format |author-first1=Russell G. |author-last1=Rinaldi |author-first2=Brian B. |author-last2=Moore |location=Poughkeepsie, NY, USA & New Paltz, NY, USA |publication-place=New York, USA |publisher=International Business Machines Corporation (IBM) |date=1969-05-20 |orig-year=1967-01-19, 1964-06-30 |id=US3445641A |type=US Patent |url=https://patents.google.com/patent/US3445641A |access-date=2018-07-18}} [https://patentimages.storage.googleapis.com/f8/84/2b/227f22291c1846/US3445641.pdf] and {{cite web |title=Data compression/expansion and compressed data processing |author-first1=Russell G. |author-last1=Rinaldi |author-first2=Brian B. |author-last2=Moore |location=Poughkeepsie, NY, USA & New Paltz, NY, USA |publication-place=New York, USA |publisher=International Business Machines Corporation (IBM) |date=1969-03-11 |orig-year=1967-01-19, 1964-06-30 |id=US3432811A |type=US Patent |url=https://patents.google.com/patent/US3432811A |access-date=2018-07-18}} [https://patentimages.storage.googleapis.com/6c/e8/d7/c1d354d8c9b947/US3432811.pdf] (NB. A patent cited in both, the Hertz and Chen–Ho patents.)
{{DEFAULTSORT:Chen-Ho encoding}} 1 : Binary arithmetic |