Computer Science 220

Assembly Language & Computer Architecture

Fall 2011, Siena College

Agenda

- Announcements
- First lecture assignment due now.
- Labs: looking for 1-3 people who can move from Tuesday lab to Wednesday lab.
- Accessing class examples:
`~jteresco/shared/cs220`in our labs and on`olsen`.

- Unix tip of the day:
`cd` - Lab 0 aftermath
- Character representations
- Memory model and pointers
- Unsigned math
- addition
- multiplication

- Signed math
- signed representations
- addition
- multiplication

Due at the start of class, Tuesday, September 13.

Please submit answers to these questions
either as a hard copy (typeset or handwritten are OK) or by email to
*jteresco AT siena.edu* by the start of class. Please use a clear subject line
when submitting by email (*e.g.*, CS 220 Lecture
Assignment 0x01, Joe Student). We will discuss these
questions at the start of class, so no late submissions are
accepted.

This lecture assignment will be graded more carefully and strictly than most. Please plan accordingly.

- Represent each of the following quantities using each of the following
8 bit representations, where possible: unsigned, signed magnitude, 1's
complement, 2's complement. Values are given in base 10, and
characters are ASCII. Express each as both an 8-bit binary number and
a 2-digit hexadecimal number.

For example, to represent the value`-17`, the unsigned representation is not possible, the signed magnitude representation is`10010001`or_{2}`91`, the 1's complement representation is_{16}`11101110`or_{2}`EE`and the 2's complement representation is_{16}`11101111`or_{2}`EF`. (5 points)_{16}- 0
- 11
- -42
- 42
- -127
- 127
- -128
- 128
- 255
- the character
`'6'`(see`man ascii`)

- Compute the following binary 2's complement problems in 4 bits. Which
answers to you trust and why (your reasons should refer to values that
can easily be checked by computer such as values of carry bits)? (2 points)
0001 0001 1001 1111 +0101 +0111 +1111 +0101 ---- ---- ---- ----

- The following problems are expressed in 8 bit, hexadecimal, 2's
complement. Compute the result as
**16 bit 2's complement**expressed in hex. Which answers do you trust? (3 points)FF FF 01 4c 7f 80 + 11 + FF + 7F x 04 x 7f x 80 ---- ---- ---- ---- ---- ----

Examples

- show_bytes - examine endianness