HP-48 series

HP-48 series

The HP-48 is a series of graphing calculators using Reverse Polish notation (RPN) and the RPL programming language, produced by Hewlett-Packard (HP) from 1990 until 2003. The series include the HP-48S, HP-48SX, HP-48G, HP-48GX, and HP-48G+, the G models being expanded and improved versions of the S models. The models with an X suffix are expandable via special RAM (memory expansion) and ROM (software application) cards. In particular, the GX models have more onboard memory than the G models. The G+ models have more onboard memory only. The SX and S models have the same amount of onboard memory.

Note that the similarly named HP-48GII (2004) is not really a member of the series, but rather much more closely related to the HP-49G and HP-49G+.

The hardware architecture developed for the HP-48 series became the basis for the HP-38G, with a simplified user interface and an infix input method, and the HP-49G with various software enhancements. Likewise, the hardware and software design of the HP-48 calculators are themselves strongly influenced by other calculators in the HP line, most of all by the HP-18 and HP-28 series.

pecifications

The HP-48 series' Saturn microprocessor is an 8-bit CPU hardware-wise but acts like a 4-bit processor in that it presents nibble-based data to programs and uses a nibble-based addressing system. External logical data fetches are transparently converted to 8-bit physical fetches. The processor has a 20-bit address bus available to code but due to the presence of the high/low nibble selection bit, only 19 bits are available externally.

In both the HP-48S/SX and G/GX series, the "Saturn" CPU core is integrated as part of a more complex integrated circuit (IC) package. These packages have codenames inspired by the members of the Lewis and Clark Expedition. The codename of the IC is "Clarke" in the S/SX, after William Clark, and "Yorke" in the G/GX, after Clark's manservant. The previous series of Saturn-based ICs were codenamed "Lewis", after Meriwether Lewis.

Common for all models

* CPU architecture: Saturn
* Screen resolution: 131×64 pixels
* Communication Ports: 4-pin RS-232 (Serial port) or Infrared port (not IrDA)
* Data bus width: 8-bit (external)
* Maximum 4-bit-cell address width: 20 bits (leading to the address space shown next)
* Logical address space: 512 kB
* Maximum register size: 64 bit (both working and scratch registers)
* Available expansion card ports on X models: 2
* Expansion card pins: 40

HP-48S/SX specific

* CPU clock frequency: 2 MHz
* Memory clock frequency: 2 MHz
* CPU codename: Clarke
* Communication Protocol(s): Serial Transfers: Kermit (protocol); Infrared Transfers: proprietary
* On-board ROM: 256 KB
* On-board RAM: 32 KB
* Maximum additional memory per expansion card: 128 KB (SX only)
* ROM versions: A, B, C, D, E, J

HP-48G/GX specific

* CPU clock frequency: 3.7 to 4 MHz
** Some claim that the frequency varies according to temperature [http://www.hpcalc.org/hp48/docs/hpedia/]
** According to one of the engineers on the design team of the HP48G series (Dave Arnett), the yields for 4MHz CPUs were essentially separated into two parts: the ones closest to spec, generally near 3.93-3.94Mhz, were reserved for the expandable models (GX), and those just slightly under spec were used for the non-expandable units (G). Eventually the yields improved and the CPUs which clocked closer to 4MHz were installed in the non-expandable units as well. The effects of (non-extreme) temperatures are almost negligible. Fact|date=May 2008
* Memory clock frequency: 2 MHz
* CPU codename: Yorke
* Communication Protocol(s): Serial Transfers: Kermit (protocol) or Xmodem; Infrared Transfers: proprietary
* On-board ROM: 512 kB
* On-board RAM: 32 kB (G) or 128 kB (G+/GX)
* Maximum additional memory for expansion card port 1: 128 kB
* Maximum additional memory for expansion card port 2: 4 MB (128 kB addressable at any given time via bank switching)
* Other communication protocols: XModem
* ROM versions: K, L, M, P, R

Programming

The HP-48 series of calculators support a stack-based programming language named Reverse Polish Lisp (RPL), a combination of Reverse Polish Notation (RPN) and Lisp. RPL adds the concepts of lists and functions to stack-based programming, allowing the programmer to pass unevaluated code as arguments to functions, or return unevaluated code from a function by leaving it on the stack. In spite of the name, RPL resembles Forth more closely than Lisp.

RPL comes in two flavors: User RPL and System RPL. User RPL is the language that a user can program directly on the calculator. System RPL requires an external compiler; this may be done on the calculator with a third-party utility, or on another machine. The two languages vary mainly in the number of low-level operations available to them. User RPL does not expose any commands which do not check their arguments. Consequently, User RPL programs cannot normally crash the calculator (therefore are slower than System RPL programs), whereas a System RPL program which invokes a command with incorrect arguments will almost certainly leave the calculator in a state which requires a full memory reset (occasionally referred to as a three-finger salute, since it requires pressing the ON, the A, and the F keys on the calculator at the same time).

It is also possible to program the HP48 directly in Machine Language code. Books are available on this subject, some of them are freely available on the web (see external links).

Programmers working in System RPL or machine language most commonly work on an HP48 emulator, since it is much quicker and easier to restore the state of a crashed emulator than to do the same with the calculator itself.

References

*
*
* Mastracci, M. (1998) cite web | title="Guide to the Saturn Processor" | work=(with HP48 applications) | url=http://www.grack.com/downloads/hp48/saturnguide/saturn.txt | accessmonthday=May 3 | accessyear=2006 (Plain text file).
* Paul Courbis and Sébastien Lalande, translated in English by Douglas R. Cannon (1993) cite web | title="HP48 Machine Language Programming" | work=(with HP48 applications) | url=http://www.courbis.fr/spip.php?article21 (PDF files).
* Paul Courbis and Sébastien Lalande (1991), French book about ML programming and more cite web | title="Voyage au centre de la HP48" | work=(with HP48 applications) | url=http://www.courbis.fr/spip.php?article20 (PDF files).
* Paul Courbis (1993), French book about ML programming and more cite web | title="Voyage au centre de la HP48g/gx" | work=(with HP48 applications) | url=http://www.courbis.fr/spip.php?article18 (PDF files).

External links

* [http://www.hpmuseum.org/hp48s.htm The Museum of Hewlett-Packard Calculators: HP-48S/SX]
* [http://www.hydrix.com/wiki/pmwiki.php/Main/HomePage HP-48 Wiki]
* [http://hp.giesselink.com/emu48.htm Emu48] or [http://x48.berlios.de/ X48]
* [http://holyjoe.net/hp/HP48.htm The HP48 Goodies Page]
* [http://www.hpcalc.org The HPCALC.org web site]
* [http://www.hp48.altervista.org/ ABC HP48G]
* [http://www.faqs.org/faqs/hp/hp48-faq HP48 FAQ (including program list)]
* [http://www.area48.com/ Area48 - HP48/49 for beginners!]


Wikimedia Foundation. 2010.

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

Look at other dictionaries:

  • SÉRIES TRIGONOMÉTRIQUES — Les séries trigonométriques se sont introduites au XVIIIe et au début du XIXe siècle, en liaison avec certains problèmes de physique (mouvement des cordes vibrantes, propagation de la chaleur). Elles sont d’un usage courant en astronomie, en… …   Encyclopédie Universelle

  • SÉRIES ET PRODUITS INFINIS — La notion de limite d’une suite est à la base de l’analyse. Le langage des séries, équivalent à celui des suites, s’est imposé dès le XVIIe siècle à propos du développement des fonctions en série entière. Cependant, les fondements rigoureux de la …   Encyclopédie Universelle

  • Series 40 — based Nokia 6300 Series 40 is a software platform and application user interface (UI) software on Nokia s broad range of mid tier feature phones, as well as on the Vertu line of luxury phones. It is the world s most widely used mobile phone… …   Wikipedia

  • Séries de divisions de la Ligue nationale — de baseball Les cérémonies d avant match de la troisième partie d une des Séries de divisions 2008 à Los Angeles, entre les Dodgers et les Cubs. Les Séries de divisions de la Ligue nationale de baseball sont disputées annuellement en octobre dans …   Wikipédia en Français

  • Séries de divisions de la Ligue américaine — de baseball Vladimir Guerrero, des Angels, au bâton contre les Red Sox pendant les Séries de divisions 2008 au Fenway Park de Boston. Les Séries de divisions de la Ligue na …   Wikipédia en Français

  • Series of 1928 (United States Currency) — Series 1928 was the first issue of small size currency printed and released by the U.S. government. These notes were the first standardized notes in terms of design and characteristics, featuring similar portraits and other facets. These notes… …   Wikipedia

  • Series — may refer to:Mathematics and science* Series (botany), a taxonomic rank between genus and species * Series (mathematics), the sum of a sequence of terms * Series circuits, a kind of electrical network * Seriation (archaeology), a method of dating …   Wikipedia

  • Series+ — Séries+ Création 31 janvier 2000 Propriétaire Astral Media (50 %) Canwest Media (50 %) Slogan « La télé des émotions » Langue Français Pays d origine …   Wikipédia en Français

  • SÉRIES+ — Création 31 janvier 2000 Propriétaire Astral Media (50 %) Canwest Media (50 %) Slogan « La télé des émotions » Langue Français Pays d origine …   Wikipédia en Français

  • Séries + — Séries+ Création 31 janvier 2000 Propriétaire Astral Media (50 %) Canwest Media (50 %) Slogan « La télé des émotions » Langue Français Pays d origine …   Wikipédia en Français

  • Series Nacionales de Rugby a Siete — 2010 Fundación 2010 Temporada Inaugural 2010 No. de equipos 18 (Categoría mascu …   Wikipedia Español

Share the article and excerpts

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