SQUOZE

Source: Wikipedia, the free encyclopedia.

SQUOZE (abbreviated as SQZ) is a memory-efficient representation of a combined

7094
.

Encoding

In the SQUOZE encoding, identifiers in the symbol table were represented in a 50-character

alphanumeric characters plus two flag bits, thus saving two bits per six characters,[6][1]
because the six bits normally allocated for each character could store up to 64 states rather than only the 50 states needed to represent the 50 letters of the alphabet, and 506 < 234.

SQUOZE character codes[1]
Most
significant
digits
Least significant digits
Dec +0 +1 +2 +3 +4 +5 +6 +7
Oct 0 1 2 3 4 5 6 7
Dec Oct Bin 000 001 010 011 100 101 110 111
+0 0 000 space 0 1 2 3 4 5 6
+8 1 001 7 8 9 A B C D E
+16 2 010 F G H I J K L M
+24 3 011 N O P Q R S T U
+32 4 100 V W X Y Z = # / % ) ⌑
+40 5 101 + & - - @ + & - * / $
+48 6 110 , .

Using base 50 already saves a single bit every three characters, so it was used in two three-character chunks. The manual[1] has a formula for encoding six characters ABCDEF:

For example "SQUOZE", normally 36 bits: 35 33 37 31 44 17(base 8) would be encoded in two 17-bit pieces to fit in the 34 bits as ( 0o220231 << 17 ) | 0o175473 == 0o110114575473.

A simpler example of the same logic would be how a three-digit BCD number would take up 12 bits, such as 987: 9 8 7(base 16) 1001 1000 0111(base 2), but any such value could be stored in 10 bits directly, saving two bits, such as 987: 3db(base 16) 11 1101 1011(base 2).

Etymology

"Squoze" is a facetious

past participle of the verb 'to squeeze'.[5][6]

The name SQUOZE was later borrowed for similar schemes used on

DEC Squoze
.

See also

References

  1. ^
    Base 50 representation of the symbol with heading character. […] The base 50 representation of a symbol is obtained as follows: […] a. If the symbol has fewer than five characters, it is headed (by blank if it is in an unheaded region). […] b. The symbol with it[s] heading character is left-justified and any unused low-order positions are filled with blanks. […] c. Each character in the symbol is replaced by it[s] base 50 equivalent. […] d. The result is then converted by the following: if the symbol, after each character is rep[l]aced by its base 50 equivalent, is ABCDEF, its base 50 representation is (A*502+B*50+C)*217+(D*502+E*50+F). […] [1][2]
  2. (PDF) from the original on 2020-03-23. Retrieved 2008-10-01. (xiv+294+4 pages)
  3. . (900 pages)
  4. ^
    The University of Iowa, Department of Computer Science. Archived
    from the original on 2020-06-06. Retrieved 2020-06-06.
  5. ^ from the original on 2020-06-06. Retrieved 2020-06-06. (3 pages)
  6. ^
    base of fifty
    . Now six character symbols may be read as natural numbers in a base fifty system. If these numbers are converted to the usual base two system, only 34 bits are required for the maximum number and a gain of two flag bits has been made. This has the incidental feature of decreasing the requisite number of bits for representing the entire code, but conversion time would outweigh the saving by a significant margin were it not for the peculiar length of the 709 word. Here is a clear illustration of the critical effect the precise specifications of the machine concerned hold over the details of an encoding schema. […] (7 pages)
  7. from the original on 2020-06-17. Retrieved 2020-06-16. (5 pages)
  8. MOD40). This form allows 3 characters to be packed into 16 bits […] [3]

Further reading

This page is based on the copyrighted Wikipedia article: SQUOZE. Articles is available under the CC BY-SA 3.0 license; additional terms may apply.Privacy Policy