31-bit

31-bit

Perhaps the only computing architecture based on 31-bit addressing is one of computing's most famous and most profitable. In 1983, IBM introduced 31-bit addressing in the System/370-XA mainframe architecture as an upgrade to the 24-bit addressing of earlier models. This enhancement allowed address spaces to be 128 times larger, permitting programs to address memory above 16 MiB (referred to as "above the line").

In the System/360 and early System/370 architectures, addresses were always stored in 32-bit words, but the machines ignored the top 8 bits of the address resulting in 24-bit addressing. With the XA extension, no bits in the word were ignored.

The transition was tricky: assembly language programmers had been using the spare byte at the top of addresses for flags for almost twenty years. IBM chose to support two forms of addressing to minimize the pain: if the most significant bit (bit 0) of a 32-bit address was on, the next 31 bits were interpreted as the virtual address. If the most significant bit was off, then only the lower 24 bits were treated as the address (just as with pre-XA systems). Thus programs could continue using the seven low-order bits of the top byte for other purposes as long as they left the top bit off. The only programs requiring modification were those that set the top (leftmost) bit of a word containing an address. This also affected address comparisons: The leftmost bit of a word is also interpreted as a sign-bit, indicating a negative number if bit 0 is on. Programs that use signed arithmetic comparison instructions could get reversed results. Two equivalent addresses could be compared as non-equal if one of them had the sign bit turned on even if the remaining bits were identical. Fortunately, most of this was invisible to programmers using high-level languages like COBOL or FORTRAN, and IBM aided the transition with dual mode hardware for a period of time.

Certain machine instructions in this 31-bit architecture alter the addressing mode bit as a possibly intentional side effect. For example, the original subroutine call instruction BAL stores certain status information in the top byte of the return address. A BAS instruction was added to support 31-bit return addresses.

In the 1990s IBM introduced 370/ESA architecture (later named 390/ESA and finally ESA/390 or System/390, in short S/390), completing the evolution to full 31-bit virtual addressing and keeping this addressing mode flag. These later architectures support more than 2 GiB of physical memory and support multiple concurrent address spaces up to 2 GiB each in size. As of mid-2006 there still are not too many programs unduly constrained by this multiple 31-bit architecture.

Nonetheless, IBM broke the 2 GiB linear addressing barrier ("the bar") in 2000 with the introduction of the first 64-bit z/Architecture system, the IBM zSeries Model 900. Unlike the XA transition, z/Architecture does not reserve a top bit to identify earlier code. Yet z/Architecture does maintain compatibility with 24-bit and 31-bit code, even older code running concurrently with newer 64-bit code.

Since Linux/390 was first released for the existing 32-bit data/31-bit addressing hardware in 1999, initial mainframe Linux applications compiled in pre-z/Architecture mode are also limited to 31-bit addressing. This limitation disappeared with 64-bit hardware, 64-bit Linux on zSeries, and 64-bit Linux applications. The 64-bit Linux distributions still support 31-bit programs.

IBM's 31-bit architecture supports expanded storage, allowing 31-bit code to make use of additional memory. However, at any one instant, a maximum of 2 GiB is in each working address space. For 31-bit Linux it is possible to assign memory above the 2 GiB bar as a RAM disk.


Wikimedia Foundation. 2010.

Игры ⚽ Поможем сделать НИР

Look at other dictionaries:

  • Bit rate — Bit rates Decimal prefixes (SI) Name Symbol Multiple kilobit per second kbit/s 103 megabit per second Mbit/s 106 gigabit per second Gbit/s 109 …   Wikipedia

  • Bit manipulation — is the act of algorithmically manipulating bits or other pieces of data shorter than a byte. Programming tasks that require bit manipulation include low level device control, error detection and correction algorithms, encryption algorithms, and… …   Wikipedia

  • Bit — Saltar a navegación, búsqueda Bit es el acrónimo de Binary digit. (dígito binario). Un bit es un dígito del sistema de numeración binario. Mientras que en el sistema de numeración decimal se usan diez dígitos, en el binario se usan sólo dos… …   Wikipedia Español

  • BIT — (binary digit) Contraction de l’expression anglaise binary digit (chiffre binaire), le terme bit prend en informatique trois significations différentes. Puisqu’on se trouve ici dans un système de numération à base 2, deux symboles (habituellement …   Encyclopédie Universelle

  • Bit — [bɪt], das; [s], [s]: kleinste Einheit der Informationseinheit beim Computer: ein Byte besteht aus acht Bit; ein Bit steht entweder auf 0 oder auf 1. * * * bịt 〈EDV; Zeichen für〉 Bit * * * 1Bịt , das; [s], s <aber: eine Million Bits od.… …   Universal-Lexikon

  • bit — bit1 [bit] n. [ME < OE bite, a bite < bītan, BITE] 1. the part of a bridle that goes into a horse s mouth, used to control the horse: see BRIDLE 2. anything that curbs or controls 3. the part of a pipestem held in the mouth: see PIPE 4. th …   English World dictionary

  • bit — Ⅰ. bit [1] ► NOUN 1) a small piece or quantity. 2) (a bit) a short time or distance. 3) (also bit of fluff or stuff) informal a girl or young woman. ● a bit …   English terms dictionary

  • Bit Cloud — is a character from , an anime based on TOMY s Zoids model franchise. Voiced by Takahiro Sakurai in the Japanese version and Richard Ian Cox in the English version of the series, he is the protagonist of the story, and a member of the Blitz team …   Wikipedia

  • Bit Corporation — (普澤 Pu Ze in Chinese) [cite web |url=http://fuji.drillspirits.net/gamate/?p=bit |title=Gamate: Bit Corporation |accessdate=2008 06 09 |author=Taizou |date=2008 |work=Neo Fuji |publisher=] was a Taiwanese game developer and console… …   Wikipedia

  • Bit Corp — Bit Corporation war ein taiwanischer Spiele und Konsolen Hersteller. Inhaltsverzeichnis 1 Spiele 2 Hardware 3 Anmerkungen 4 Weblinks // …   Deutsch Wikipedia

  • Bit (informatique) — Bit Pour les articles homonymes, voir Bit (homonymie).  Ne doit pas être confondu avec byte. Unités de bits Préfixes SI …   Wikipédia en Français

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”