# CS代考计算机代写 ¡°Note that each of the six control bits instructs the ALU to carry out a certain elementary operation. Taken together, the combined effects of these operations cause the ALU to computer a variety of useful functions. … Of course, this does not happen miraculously, it¡¯s the result of careful design.¡± (Nisan 34)

¡°Note that each of the six control bits instructs the ALU to carry out a certain elementary operation. Taken together, the combined effects of these operations cause the ALU to computer a variety of useful functions. … Of course, this does not happen miraculously, it¡¯s the result of careful design.¡± (Nisan 34)

¡°First we made a list of all the primitive operations that we wanted our computer to be able to perform (right column in figure 2.6). Next, we used backward reasoning to figure out how x, y and out can be manipulated in binary fashion in order to carry out the desired operations. … The resulting ALU is simple and elegant. And in the hardware business simplicity and elegance imply inexpensive and powerful computer systems.¡± (Nisan 38)

No way! Do you really believe that combining four simple operations in a two¡¯s complement binary system can yield the eighteen functions above?

Prove the table to yourself by procedurally working through the implementations of each function (applied to 4-bit numbers for simplicity). Write the decimal equivalent of the arbitrarily provided binary inputs and outputs. Show each step of your work (use the margin if necessary when summing or and¡¯ing).

f(x,y) = 0 0000

1010 -6

0001 1

set x to zero

0000

don¡¯t negate x

0000

set y to zero

0000

don¡¯t negate y

0000

add x and y

0000

don¡¯t negate result

0000 0… duh

f(x,y) = 1 0001

1010

0001

zx=1

nx=1

zy=1

ny=1

x+y

!out

f(x,y) = -1

1010

0001

Prove to yourself that the answers are correct. First calculate the operation by hand and write the result in binary and decimal. Compare this calculation to the procedural output.

f(x,y) = x 0100 4

0100

0101

f(x,y) = y

1010

0011

f(x,y) = !x

1010

0101

Are you remembering to write the decimal values for each of the inputs and the target answer (upper-left box)?

f(x,y) = !y

1010

0101

f(x,y) = -x

0010

1000

“Computers in the future may weigh no more than 1.5 tons.”

– Popular Mechanics, 1949

f(x,y) = -y

1010

0001

f(x,y) = x+1

0001

0001

f(x,y) = y+1

1010

1111

f(x,y) = x-1

0110

0001

“But what…is it good for?”

– Advanced Computing Systems Division of IBM, 1968, commenting on the microchip

f(x,y) = y-1

0001

1111

f(x,y) = x+y

0010

0101

f(x,y) = x-y

0111

0010

¡°Let¡¯s go trashing,¡± someone in the back seat said. ¡°There¡¯s a C.O. in Astoria.¡± It¡¯s cool to be talking in a kind of hacker¡¯s code. The word trashing means climbing around in garbage, where you hope to find computer printouts that list secret passwords and logons. And C.O., as everybody in the Supra knows, means Central Office. As in New York Telephone¡¯s Central Office, in Astoria, Queens.

Masters of Deception by Michele Slatalla

f(x,y) = y-x

1101

1111

f(x,y) = x&y

1011

1000

f(x,y) = x|y

1111

1010

My dear creative, emotional, sometimes foolish, opinionated human,

You should now see that the characteristics of binary numbers in the two¡¯s complement system coupled with a combination of four simple binary/Boolean operations (zeroing, bitwise negation, adding, or¡¯ing) provides us with at least eighteen simple arithmetic functions.

true,

Banana Jr. 2000

PS. Now go build your ALU.

Bloom County Babylon by Berke Breathed