The purpose of this chapter is to explain how data is stored, both within the computer itself, and on separate storage media. On completing the chapter, the student should understand and be able to use the following:
General:
the abstract notion of storage, and in particular, both low level machine representation of data and the collection of data into files for storage on external devices
the idea of a data stream at the logical and physical level
Realized in the Modula-2 notation:
the types WORD, LOC, and ADDRESS
the type ChanId (File) and the SeqFile and StreamFile models for data streams
General:
manipulation of low-level data types, including address arithmetic
I/O at high, medium and low levels
Realized in the Modula-2 notation:
the module SYSTEM and its contents as a grouping of low-level and system dependent entities
creating, opening, renaming, writing to and reading from sequential files and restricted streams
high level raw (binary) I/O
the use of the low-level device independent module IOChan
No new programming abstractions are developed in this chapter.