Course Computer Systems


Week 36, September 2-4 2013


A computer system encodes information of bits, organized as sequences of bytes. Different encodings can be used to representing basic data concepts as integers, real numbers and character strings. Understanding of these encodings at the bit level, as well as understanding the mathematical characteristics of the arithmetic operations, is important for writing programs that operate correctly over the full range of numeric values.

In this class the following concepts are introduced:

  • hexadecimal notation, bit-level operations, logical operations, shift operations
  • integer representation and aritmetic
  • floating point representation and aritmetic


The class is based on chapter 2 of the book Computer Systems: A programmer's perspective by R.E. Bryant and D.R. O'Hallaron.

Recommanded reading (85 pages, 4 hours):

Chapter 2    Representing and Manipulating Information


On request of the Student's Counsel, these lectures were recorded with the Lecturtiny Studio. Download Lecturnity Player and listen to lecture, synchronized with the sheets. Note that this recordings are converted to the official version, and can now be played on Windows, Mac and Linux. The class is scheduled in four hours:


Last updated September 10, 2014.

o This web-page and the list of participants to this course is maintained by Arnoud Visser (
Faculty of Science
University of Amsterdam

visitors in