634 captures
17 Jan 2004 - 28 Jan 2026
Mar APR May
30
2012 2013 2014
success
fail

About this capture

COLLECTED BY

Organization: Internet Archive

The Internet Archive discovers and captures web pages through many different web crawls. At any given time several distinct crawls are running, some for months, and some every day or longer. View the web archive through the Wayback Machine.

Collection: Wide Crawl started April 2013

Web wide crawl with initial seedlist and crawler configuration from April 2013.
TIMESTAMPS

The Wayback Machine - http://web.archive.org/web/20130430033412/https://en.wikipedia.org/wiki/16-bit
 



16-bit

 

From Wikipedia, the free encyclopedia
 

Jump to: navigation, search  
Bit
1 4 8 12 16 18 24 31 32 36 48 60 64 128 256 512
Application
16 32 64
Floating point precision
x1 x2 x4
Floating point decimal precision
32 64 128

In computer architecture, 16-bit integers, memory addresses, or other data units are those that are at most 16 bits (2 octets) wide. Also, 16-bit CPU and ALU architectures are those that are based on registers, address buses, or data buses of that size. 16-bit is also a term given to a generation of microcomputers in which 16-bit microprocessors were the norm.

Contents

[edit] 16-bit architecture

Early (c. 1966-1972) 16-bit computers include the HP 2100,[1] the Data General Nova,[2] the DEC PDP-11,[3] the IBM System/7,[4] and the HP 3000.[5] Early (c. 1973-1975) multi-chip 16-bit microprocessors include the National Semiconductor IMP-16 and the Western Digital MCP-1600. Early (c. 1975-1976) single-chip 16-bit microprocessors include the National Semiconductor PACE, the HP BPC, and the TI TMS9900. Other notable 16-bit processors include the Intel 8086, the Intel 80286, the WDC 65C816, and the Zilog Z8000. The Intel 8088 was program-compatible with the Intel 8086, and was 16-bit in that its registers were 16 bits long and arithmetic instructions, even though its external bus was 8 bits wide.

A 16-bit integer can store 216 (or 65,536) distinct values. In an unsigned representation, these values are the integers between 0 and 65,535; using two's complement, possible values range from −32,768 to 32,767. Hence, a processor with 16-bit memory addresses can directly access 64 KiBofbyte-addressable memory.

16-bit processors have been almost entirely supplanted in the personal computer industry, but remain in use in a wide variety of embedded applications. For example the 16-bit XAP processor is used in many ASICs.

[edit] The 16/32-bit Motorola 68000 and Intel 386SX

The Motorola 68000 is sometimes called 16-bit because its internal and external data buses were 16 bits wide, however it could be considered a 32-bit processor in that the general purpose registers were 32 bits wide and most arithmetic instructions supported 32-bit arithmetic. The MC68000 was a microcoded processor with three internal 16-bit ALU units. Only 24-bits of the Program Counter were available on original DIP packages, with up to 16 megabytes of addressable RAM. MC68000 software is 32-bit in nature, and forwards-compatible with other 32-bit processors.[6] The MC68008 was a version of the 68000 with 8-bit external data path and 1 megabyte addressing. Several Apple Inc. Macintosh models; e.g., LC series, used 32-bit MC68020 and MC68030 processors on a 16-bit data bus to save cost.

Similar analysis applies to Intel's 80286 CPU replacement called the 386SX which is a 32-bit processor with 32-bit ALU and internal 32-bit data paths with a 16-bit external bus and 24-bit addressing of the processor it replaced.

The 68000 processor of the Sega Mega Drive was a highly advertised feature of the video game system. Due to the saturation of this advertising, the 1988-1995 era (fourth generation) of video game consoles is often called the 16-bit era.

[edit] 16-bit memory models

Just as there are multiple data models for 64-bit architectures, the 16-bit Intel architecture allows for different memory models—ways to access a particular memory location. The reason for using a specific memory model is the size of the assembler instructions or required storage for pointers. Compilers of the 16-bit era generally had the following type-width characteristic:

16-bit data model
Data model short int long Pointers
IP16L32 (near) 16 16 32 16
I16LP32 (far) 16 16 32 32
Tiny
Code and data will be in the same segment (especially, the registers CS,DS,ES,SS will point to the same segment); near pointers are always used. Code, data and stack together cannot exceed 64K.
Small
Code and data will be in different segments, and near pointers are always used. There will be 64K of space for code and 64K for data/stack.
Medium
Code pointers will use far pointers, enabling access to 1 MB. Data pointers remain to be of the near type.
Compact
Data pointers will use far and code will use near pointers.
Large/huge
Code and data pointers will be far.[7]

[edit] 16-bit application

In the context of IBM PC compatible and Wintel platforms, a 16 bit application is any software written for MS-DOS, OS/2 1.x or early versions of Microsoft Windows which originally ran on the 16-bit Intel 8088 and Intel 80286 microprocessors. Such applications used a 20-bit or 24-bit segment or selector-offset address representation to extend the range of addressable memory locations beyond what was possible using only 16-bit addresses. Programs containing more than 2^{16} bytes (64kilobytes) of instructions and data therefore required special instructions to switch between their 64-kilobyte segments, increasing the complexity of programming 16-bit applications.

[edit] List of 16-bit CPUs

[edit] See also

[edit] References

  1. ^ Computer History Museum, "HP 2116".
  2. ^ Computer History Museum, "Data General Nova minicomputer".
  3. ^ The Centre for Computing History, "Digital Micro PDP-11".
  4. ^ IBM Archives, "System/7 Chronology".
  5. ^ Computerworld, "Midis Challenge Medium-Size Systems", June 25, 1975, p. S/6.
  6. ^ http://cache.freescale.com/files/archives/doc/ref_manual/M68000PRM.pdf?fsrch=1&WT_TYPE=Reference%20Manuals&WT_VENDOR=FREESCALE&WT_FILE_FORMAT=pdf&WT_ASSET=Documentation
  7. ^ Borland Turbo C++ 1.01 in-program manual

Retrieved from "http://en.wikipedia.org/w/index.php?title=16-bit&oldid=545672818" 

Categories: 
Data unit
Hidden categories: 
Incomplete lists from May 2011
Articles needing additional references from October 2009
All articles needing additional references
 

Navigation menu

 

Personal tools



Create account
Log in
 



Namespaces



Article

Talk
 


Variants








Views



Read

Edit

View history
 


Actions












Navigation




Main page

Contents

Featured content

Current events

Random article

Donate to Wikipedia
 



Interaction




Help

About Wikipedia

Community portal

Recent changes

Contact Wikipedia
 



Toolbox




What links here

Related changes

Upload file

Special pages

Permanent link

Page information

Cite this page
 



Print/export




Create a book

Download as PDF

Printable version
 



Languages




العربية

Беларуская

Català

Česky

Deutsch

Español

Esperanto

Français



Italiano

Magyar

Bahasa Melayu



Norsk bokmål

Polski

Português

Русский

Slovenčina



Edit links
 





This page was last modified on 20 March 2013 at 12:40.

Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. 
Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.
 


Privacy policy

About Wikipedia

Disclaimers

Contact Wikipedia

Mobile view
 


Wikimedia Foundation
Powered by MediaWiki