8.0 Chapter Goals

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:

Data Representation Abstractions


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

Data Manipulation Abstractions


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

Programming Abstractions

No new programming abstractions are developed in this chapter.