A Practical Introduction to Computer Architecture Daniel Page
[email protected] h i git # ba293a0e @ 2019-11-14 © Daniel Page
[email protected] h i git # ba293a0e @ 2019-11-14 2 © Daniel Page
[email protected] h i MATHEMATICAL PRELIMINARIES In Mathematics you don’t understand things. You just get used to them. – von Neumann The goal of this Chapter is to provide a fairly comprehensive overview of theory that underpins the rest of the book. At first glance the content may seem a little dry, and is often excluded in other similar books. It seems clear, however, that without a solid understanding of said theory, using the constituent topics to solve practical problems will be much harder. The topics covered all relate to the field of discrete Mathematics; they include propositional logic, sets and functions, Boolean algebra and number systems. These four topics combine to produce a basis for formal methods to describe, manipulate and implement digital systems. Readers with a background in Mathematics or Computer Science might skip this Chapter and use it simply for reference; those approaching it from some other background would be advised to read the material in more detail. 1 Propositional logic Definition 0.1. A proposition is a statement whose meaning, termed the truth value, is either true or false (less formally, we say the statement is true if it has a truth value of true and false if it has a truth value of false). A given proposition can involve one or more variables; only when concrete values are assigned to the variables can the meaning of a proposition be evaluated.