### A good answer might be:

`-12710 ... 0 ... +12710`

# Problems with Sign-Magnitude

One of the eight bits is used for the sign, which leaves seven bits for the magnitude. The magnitude uses 7-bit unsigned binary, which can represent 010 (as 000 0000) up to 12710 (as 111 1111). The eighth bit makes these positive or negative, resulting in `-12710, ... -0, 0, ... 12710`.

One pattern corresponds to "minus zero", 1000 0000. Another corresponds to "plus zero", 0000 0000.

There are several problems with sign-manitude. It works well for representing positive and negative integers (although the two zeros are bothersome). But it does not work well in computation. A good representation method (for integers or for anything) must not only be able to represent the objects of interest, but must support operations on those objects.

This is what is wrong with Roman Numerals: they can represent any integer you want, but they are very, very poor when used in computation.

### QUESTION 13:

Can the "binary addition algorithm" be used with sign-magnitude repn? Try adding +16 with -24:

>     0001 0000     16
>     1001 1000    -24
>     ---------    ---