HOME

TheInfoList



OR:

SQUOZE (abbreviated as SQZ) is a memory-efficient representation of a combined source and relocatable
object Object may refer to: General meanings * Object (philosophy), a thing, being, or concept ** Object (abstract), an object which does not exist at any particular time or place ** Physical object, an identifiable collection of matter * Goal, an ai ...
program file with a symbol table on
punched card A punched card (also punch card or punched-card) is a piece of stiff paper that holds digital data represented by the presence or absence of holes in predefined positions. Punched cards were once common in data processing applications or to di ...
s which was introduced in 1958 with the SCAT assembler on the
SHARE Operating System The SHARE Operating System (SOS) is an operating system introduced in 1959 by the SHARE user group. It is an improvement on the General Motors GM-NAA I/O operating system, the first operating system for the IBM 704. The main objective was to im ...
(SOS) for the
IBM 709 The IBM 709 was a computer system, initially announced by IBM in January 1957 and first installed during August 1958. The 709 was an improved version of its predecessor, the IBM 704, and was the third of the IBM 700/7000 series of scientific co ...
. A program in this format was called a ''SQUOZE deck''. It was also used on later machines including the
IBM 7090 The IBM 7090 is a second-generation transistorized version of the earlier IBM 709 vacuum tube mainframe computer that was designed for "large-scale scientific and technological applications". The 7090 is the fourth member of the IBM 700/7000 seri ...
and 7094.


Encoding

In the ''SQUOZE encoding'', identifiers in the symbol table were represented in a 50-character
alphabet An alphabet is a standardized set of basic written graphemes (called letters) that represent the phonemes of certain spoken languages. Not all writing systems represent language in this way; in a syllabary, each character represents a sy ...
, allowing a 36-bit
machine word In computing, a word is the natural unit of data used by a particular processor design. A word is a fixed-sized datum handled as a unit by the instruction set or the hardware of the processor. The number of bits or digits in a word (the ''word ...
to represent six
alphanumeric Alphanumericals or alphanumeric characters are a combination of alphabetical and numerical characters. More specifically, they are the collection of Latin letters and Arabic digits. An alphanumeric code is an identifier made of alphanumeric ...
characters plus two flag bits, thus saving two bits per six characters, 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. Using base 50 already saves a single bit every three characters, so it was used in two three-character chunks. The manual has a formula for encoding six characters ABCDEF: (A*50^2 + B*50 + C) * 2^ + (D*50^2 + E*50 + F) 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'. The name SQUOZE was later borrowed for similar schemes used on DEC machines; they had a 40-character alphabet (50 in
octal The octal numeral system, or oct for short, is the base-8 number system, and uses the digits 0 to 7. This is to say that 10octal represents eight and 100octal represents sixty-four. However, English, like most languages, uses a base-10 number ...
) and were called
DEC RADIX 50 RADIX 50 or RAD50 (also referred to as RADIX50, RADIX-50 or RAD-50), is an uppercase-only character encoding created by Digital Equipment Corporation (DEC) for use on their DECsystem, PDP, and VAX computers. RADIX 50's 40-character ...
and MOD40, but sometimes nicknamed
DEC Squoze RADIX 50 or RAD50 (also referred to as RADIX50, RADIX-50 or RAD-50), is an uppercase-only character encoding created by Digital Equipment Corporation (DEC) for use on their DECsystem, PDP, and VAX computers. RADIX 50's 40-character re ...
.


See also

*
Packed BCD In computing and electronic systems, binary-coded decimal (BCD) is a class of binary encodings of decimal numbers where each digit is represented by a fixed number of bits, usually four or eight. Sometimes, special bit patterns are used for ...
*
Hertz encoding The hertz (symbol: Hz) is the unit of frequency in the International System of Units (SI), equivalent to one event (or cycle) per second. The hertz is an SI derived unit whose expression in terms of SI base units is s−1, meaning that one he ...
*
Chen–Ho encoding 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 ...
*
Densely packed decimal Densely packed decimal (DPD) is an efficient method for binary encoding 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 signifi ...
(DPD) *
BCD (character encoding) BCD (''binary-coded decimal''), also called alphanumeric BCD, alphameric BCD, BCD Interchange Code, or BCDIC, is a family of representations of numerals, uppercase Latin letters, and some special and control characters as six-bit character code ...
*
Base 50 (numeral system) There are many different numeral systems, that is, writing systems for expressing numbers. By culture / time period By type of notation Numeral systems are classified here as to whether they use positional notation (also known as place-value ...
*
Base conversion Positional notation (or place-value notation, or positional numeral system) usually denotes the extension to any base of the Hindu–Arabic numeral system (or decimal system). More generally, a positional system is a numeral system in which the ...


References


Further reading

* * {{cite book , author-first1=John Robert , author-last1=Ehrman , author-first2=James N. , author-last2=Snyder , publisher=
University of Illinois The University of Illinois Urbana-Champaign (U of I, Illinois, University of Illinois, or UIUC) is a public land-grant research university in Illinois in the twin cities of Champaign and Urbana. It is the flagship institution of the Universi ...
, Graduate College Digital Computer Laboratory , title=The PORTHOS Executive System for the IBM 7094 - User's Manual , chapter=3.3.2.1 SCAT , date=1964-04-15 , pages= , url=https://core.ac.uk/download/pdf/4834584.pdf , access-date=2020-06-07 , url-status=live , archive-url=https://web.archive.org/web/20200607163131/https://core.ac.uk/download/pdf/4834584.pdf , archive-date=2020-06-07 , quote-page= , quote= ��SCAT is a two part assembler which in brief operates as follows: Programs written symbolically as one order per card are ingested during the first phase by the "compiler" which scans the program for symbols and outputs a condensed deck of cards (SQUOZE deck) containing tables of these symbols and the program condensed and efficiently coded. During the second phase this SQUOZE deck is ingested by the "modify and load" program which converts the object program to binary machine language which by option can either be loaded ready to run or output on absolute binary cards (23 orders per card) for loading and running at a later time. The "lister" can produce a printed version of the program at either of these stages. Symbolic corrections to a program can be inserted into the second phase along with the SQUOZE deck. ��} (1 page) Executable file formats