The PL/M programming language
(an acronym of Programming Language for Microcomputers)
is a high-level language conceived and developed by
Gary Kildall in 1973 for Hank Smith at Intel for its microprocessors.
The language incorporated ideas from PL/I, ALGOL and XPL, and had an integrated macro processor. As a graduate of the University of Washington Kildall had used their Burroughs B5500 computer, and as such was aware of the potential of high-level languages such as ESPOL for systems programming.
Unlike other contemporary languages such as Pascal, C or BASIC, PL/M had no standard input or output routines. It included features targeted at the low-level hardware specific to the target microprocessors, and as such, it could support direct access to any location in memory, I/O ports and the processor interrupt flags in a very efficient manner. PL/M was the first higher level programming language for microprocessor-based computers and was the original implementation language for those parts of the CP/M operating system which were not written in assembler. Many Intel and Zilog Z80-based embedded systems were programmed in PL/M during the 1970s and 1980s. For instance, the firmware of the Service Processor component of CISC IBM AS/400 was written in PL/M.
The original PL/M compiler targeted the Intel 8008. An updated version (PL/M-80) generated code for the 8080 processor, which would also run on the newer Intel 8085 as well as on the Zilog Z80 family (as it is backward-compatible with the 8080). Later followed compilers for the Intel 8048 and Intel 8051-microcontroller family (PL/M-51) as well as for the 8086 (8088) (PL/M-86), 80186 (80188) and subsequent 8086-based processors, including the advanced 80286 and the 32-bit 80386. There were also PL/M compilers developed for later microcontrollers, such as the Intel 8061 and 8096 / MCS-96 architecture family (PL/M-96).
While some PL/M compilers were "native", meaning that they ran on systems using that same microprocessor, e.g.
This page is automatically generated and may contain information that is not correct, complete, up-to-date, or relevant to your search query. The same applies to every other page on this website. Please make sure to verify the information with EPFL's official sources.