Вы находитесь на странице: 1из 492

The Hidden Language of

Computer Hardware and Software

Charles Petzold


2001 .

004
32.973.26018
33
.
33

. .: - ,
2001. 512 .: .
ISBN 5750201597
. , ,
, .
, , ,
, 25 .
(
, ), , .
004
32.973.26018
Microsoft Corporation, ,
, .
, , . , , .
, , , , Corbis Images (Joel Panchot). Popular
Electronics ( 1975 .) Ziff-Davis Ziff.
.
Macintosh Apple Computer.
Microsoft, MS-DOS Windows ,
Microsoft / . .


Microsoft Corporation, 2000
, Microsoft
Corporation, 2001
ISBN 0735611319 (A.)
ISBN 5750201597

;
-
, 2001


........................................................... VII
1
......................................... 1
2
................................ 9
3
........................ 15
4
.............................. 23
5
, ................................. 35
6
..................................... 45
7
........................... 53
8
.............................61
9
......................................... 77
10
....................... 99
11
, ........... 119
12
............................. 153
13
? .......................... 169
14
................... 185
15
....... 215
16
.................................... 229
17
................................... 249
18
.................... 289
19
..... 321
20 ASCII ..... 357
21
................................... 377
22 ........................ 403
23 ,
................................. 423
24 ..................... 439
25 ....................... 459
.......................................... 486

,
. ,
, , ,
: ?
. , , ,
.
:
, .
, . -,
, ,
: , , , .
, .
. ,
. ,
, . , , ,
.
:
, . , -, . , , , . , , . , ,

.
, .
: ?

VIII

, , .
.
, ,
.
, ,
,
.
,
: ,
, .
, !
: ,
. ,
,
, , . ,
50 ,
.
- :
Macintosh Windows?
, , , , .
, , , ,
. ,
XX ,
, .
,
, ,
.

, . ,

IX

, .
, 25
50 , .
:
, .
,
.
,
. , ,
XIX
. , 17-
, , ,
, 100 .
, .
, ,
.
76- , 215-.
167- ,
.
,
( , ?). ,
.
, , .

16 2000 .

code n
1. 1) , 2) , (, . .)
2. 1) ; Morse ~ // ; telegraphic ~ 2)
3. .
4. . (. )
5. . ; . ()
- ( ..
, .. ). 2-, . .: , 1997.

, 10 .
,
. , , , , ,
, , ,
. .
.
? , ?
10- ? ,
. , , , .
, . : ,
. , . ,
, .
? . ,
. , ,
. ,

, , .

. , ,
. ,
, , . .
- ,
. , ,
,
. , ? , .
:
, , (33 ).
, , 2, 6 4 , (12 ).
.
-.
: . , ?, 95 , , .
, - . -
, , . , , . , ,
.
. ( 1 33 ). . ,
, ,
. ?
30 ( , ), 95, .

,
, , . .
A

, X
Y

,
.

.
, . - ,
. .

, ,
, - ,
. ,
, . , ,
, . , .
, , , , -

, . . , ( ,
), . . . , ,
( ) .
,
, . ,
, . , ().
, . ,
,
.
, . , , .
,
, ,
, .
,
, , .
, , ,
, : ( ), ( , ) ( ). ,
( ) ( )
.

. , , , .

, (
).
( ). ,
, ,
.
. . ,
, ,
( , ). , , , , .
.
, ( ,
).
,
(, , ).
.


(6 , 3 ).
.

.
, , , ,
. .
, ,
, - .


,

.

. , , ,
, , .
, : 3 , 3 , 3
SOS. ,
.
.
BBC , , , --. ,
V (Victory, . . ).
,
. , .
1

. ,
.
.

'

"


( )
(
, , .).
SOS
.
,
. , , . , . , 510
, , ( 100 ), .
(
), ,
, . ( ), .
. , ,

.

(Samuel
Finley Breese Morse) (17911872),
.
,
. ,
, .

, . ,
, .
A

10


, . ,

,
. ,
---,
!
, :

, :
.
. , . , .
.
.
, , () ():
E
T

() , ,
.

8 :

11

, 16
( ):

? 2 + 4 +
+ 8 + 16 = 30 , . . 4 ,
, 26 , 2 ,
(
).
, ,
, . , .
, , ,
,
.

.
: .
.

16

12

: 2 ,
2 2, 2 2 2, . .:

22

222

2222

, . ,
2 2 2 2 2 24. 2, 4,
8 16 2,
:

21

22

23

24

.
2 , :
= 2
2 ,
.
(. . 13). ,
,
. ,
. ,
--. : , ,
. , , .

. -, ,
! -,

13

, , .

,
, .
32 (2 2 2 2 2 = 25). 10
16 ,
.
, , 64 (2 2 2 2 2 2 = 26) ,
2 + 4 + 8 + 16 + 32 + 64 = 126.
, ,
. , .

14

,
.
:
= 2

:

21 = 2

22 = 4

23 = 8

24 = 16

25 = 32

26 = 64

27 = 128

28 = 256

29 = 512

10

210 = 1024

, , .
2 .
(binary) , : . , , . (
) 2.
,
.
, .
.


, , .
, 18 . , .
(Louis Braille) 1809 . ,
, 25 . .

.
, ,
. ,

(
). .
-

16

, 10
.
. ..
(Valentin Hau) (17451822)
, , .
, , , .
. ,
, , .
,
. ,
,
, .
. (Charles Barbier) 1819 . , criture
nocturne, . . . , . , . , .
. ,
, . ,
, .
12
. ,
,
. , , , .
,
( 15 ), . , -

17

.
1852 . 43 .
, ,
. , .
, ,
.

. .
.
,

, 2 3. 1 6:
1


.
, ,
, - . , , . :
, . ,

1, 3 5 , 2, 4 6 .
, .
: . ,

18

.
, ,
2 2 2 2 2 2 = 26 = 64.
, 64
. :

, 64 ,
, . 64,
, (
, ).
:

19

, you and me :

: - , ( ).

.
, . , w, ( , ).
25 64 .
, . ( a j) 1, 2, 4 5.
,
3, 6.
. ,
, 2-
(Grade 2 Braille). , . , ,
, .
(: ):

()

()

()

, you and me :

20

31
, 3 10 .
64 . : .
-, a j
6. w:

, , about:

-, a j
, 2, 3, 5 6.
:

, ,
. :
, .
51 . 6
3, 4, 5 6 :

21

ble.
, , .
a j:

256.

7 :

( 4) .
. , 4
6 ( ),
. 5 6 .
( ,
),
6. , , .

(Louis Braille):

, l, ou, i s, ,
b, r, a, i, l, l e (,
, ).
, , () 64 , , . , . --

22

- .
:
.
(shift). , .
,
( ) , . escape-.
escape (, ): escape-
-.
,
escape-
.

,
. , , , , ,
.
.
, ,
. , . ,
,
.
.
, , , , , , .
, . , , , .

24


. . , .
, , .

, :
. ,
, ,
. ,
. .
,
- , . , (, , ).
, , .
, , . , , , ,
.
, , . . , ( ), , -

25

. : , . : , , ,
, .

, ,
, , . .
3 , 3 4 .
, ,
,
1 112.
. 3.

. . ,
. ,
.
, ,
.
. .
hlektron (), . . -

26

, ,
. ,
, , . ,
, .
. , . . + , .
, , ,
. , .
,
- , . :
,

.
, .
, . ,
. ,
.
,
. , . ,
( ),
, . . .
, . , . , . , ,
, .
, , .

27

1,5 .

().

,
, +.

.
, - .

, , , . , ,
( ), , + ( , ) .

,
(, ), .
,

. , . :

28

, , .
: . . , (), ,
3 .
, :

, ,
, , .
:

29

.
. 1,5 , . ,
, .
. , .
. , ,
.

. ? ? , .

. ,
. , , ,
. , , . , . (, -,
) . . .
.
, , .
, .
.
, .
, . , . , - .
, .
, ,

30

. ,
.
,
. ?
.
.
, - . () (Alessandro Volta) (17451827), 1800 . .

, .
() (Andre Marie Ampere)
(17751836). 1
6 240 000 000 000 000 000 .
- ,
, , , , . , . , . , (), () .
, .
(. . )
(Georg Simon Ohm) (17891854). , :
I = E / R,
I , E (
), R .
, :

31

1,5 .

, (R) ,
. (I) 1,5
, . . .
( ):

. - 1,5 , .
1,5 , . .
. - .
,
.

.
:

32

, (
) .
, , .
.
(Thomas Edison) (18471931), 1879 ., ,
1.
, . ;
. .
,
3 . 4 . ,
3 4 = 0,75 , . . 4 680 000 000 000 000 000 .
, , , 4 . ,
, .
, , , , , ().

2 (James Watt) (17361819), .
:
P = E I.

1874 .
(18471923). . .


,
(Watt) . . .

33

3 0,75 , 2,25 .

, ,
!
-, ! , .
, , , . , , .
, .
, . , . , ,
. . , .

. .
,
.
, .
.
! , . ,
.
?
, - , , . . ,
, .

36

, . :

, ,
, , , , . ,
.

.
, ,
.

37

! . , .
,
(
).
,
25%, :

.
( )
, , .
(common). ,
. .
,
. , , . ,
, .

38

,
.
, , . , ,
.

,
, , , .
:

39

.
,
, 25% .
, ,
. , 1,5- ,
100- , .
. , .
. ,
6 400 , , , . .
, , , . , ,
(, ) (, ).
: , . , . .
, .
, .
, ,
,
, 2,5 1,5
. 1 200 . .
, . . ,
, .
,
. , , . , .

40

,
2,5- , .
.
.

, ,
.

, :

41

,
,
. .
, , , ,
.
, ,
, , , , . , . .
, ,
. , .
.
.

, 1,5- . .
, .

, . V,
(voltage). :

42

, V , . , (, ).

(zero potential). , . , ,
, , , .
, : -
.
4 ,
.
, .
V ,
, , .
.
, ( ), , .

43

,
.

. , .
, ,
. , . ?
, . ,
. , . , .
, .
? . , , .
, 20
9,99 100 ( 30 ), . .
15 , .
American Wire Gauge (AWG).
AWG, .
20 0,8 , 10 300 1
.
.
? 50 . , 4 . ,
0,75
(3 4 ), , 0,06 (3 50 ). , .

44

, , , , . 10 2,5 1 300 , . .
5 1,5 . 35- ( 10 ) 11,99
, , , , .

. ,
100- , , 120
144 . , .
150 ,
. ,
. , ,
- .
, ,
, ,
, .

1791 . (
, ), .

, , .
XVI -.
1791 . 35 ,
.
,
-. (1825) -. 1836-

5,7% .

,

(Louis Daguerre) . 1840 . -

46

17- (Mathew Brady),


.

.
, .
, , . XIX . , , .
, .
, , .


.
-,
, .
- .
( ) XIX ., , 1832 . . : ,
- .
,
. ,
1879 . .
, ,
.
(
,

47

). , .

. .
, ,
. ,
- ,
, . -
(- )
. , , , , , .

1836 ., 1843 .
. 24 1844 . , , .
:

, ,
.
: , -

48

, .
, , .
, .
. ,
, , . , , .
,
, . ,
:

, ,
(). , , , ().
(-) , .
,
, .

49

,
.
, .
,
V. :
V


.
. ,
, .
. (, , ) ,
, ,
- .

.
, .
. 5 . 300
500 , .
: ,
.

50

, .
- -
. , , ,
, . -
.

. , ,
.
, , . .
, , ,
, , .
, , .
.

, .
, , .
(repeater),
(relay). , .
, . ,

51

, .
:
V

, ,
.
V

52

, :
V
V

. , , , .
,
. , .
,
. - ,
- .
. , .

. ( ) , ,
, , cat, gato, chat, Katze katta.
.
,
:

1 2 3 4 5 6 7 8 9 10
!
, ,
,
. :

3
-.
3 3 , , ,
, ,
. , , :

54

3
, :

11
. , ( ), .
. ,
.
.
,
, , . , 10,
. 10:
101 = 10
102 = 100 ()
103 = 1 000 ()
104 = 10 000
105 = 100 000
106 = 1 000 000 ()
107 = 10 000 000
108 = 100 000 000
109 = 1 000 000 000 ()

55

, ,
. , -
:

, , : ? ,
... ... - ?

,
27 . , , .

, - : . .

. , , . : ? ,
MCMLIII .
27

56

: 10 , 5 V.
, ,

I V X L C D M
I .
. V, 5, , .
X, 10, V. L .
centum (100), mille (1000).
,
, .
, : I V, V
X, X L . .
.
(, ). , , ,
.
, ,
. ,
. - - ( ).
825 . ,
. 1120 . .
.
, . . , , .
( ) ,
. 100 1 000 000
, , .

57

,
,
10.

, , 10, , .

, 0. , .
, 25 205 250. , , .

. , 4 825 . :


:
4825 = 4000 + 800 + 20 + 5
:
4825 = 4 1000 +
8 100 +
2 10 +
5
, :
4825 = 4 103 +
8 102 +
2 101 +
5 100
, 0 1.
, ,
.
0 9 999 999:

58

. , 1
, 0.
, ,
,
. 42 705,684 =
4 10 000 +
2 1000 +
7 100 +
0 10 +
51+
6 10 +
8 100 +
4 1000
:
4 10 000 +
2 1000 +
7 100 +
0 10 +
51+
6 0,1 +
8 0,01 +
4 0,001
10
4 104 +
2 103 +
7 102 +

59

0 101 +
5 100 +
6 101 +
8 102 +
4 103
: 0,
.
, 3 + 4 = 7. , 30 + 40 = 70, 300 + 400 =
= 700, 3000 + 4000 = 7000.
. , .
(. . )
. .
+

10

10

11

10

11

12

10

11

12

13

10

11

12

13

14

10

11

12

13

14

15

10

11

12

13

14

15

16

10

11

12

13

14

15

16

17

10

11

12

13

14

15

16

17

18

, .
, , 4 + 6 = 10.
, -

60

,

. , .

10

12

14

16

18

12

15

18

21

24

27

12

16

20 24

10

15

20 25

12

18 24

14 21

28

32

36

30

35

40

45

30

36

42

48

54

28

35

42

49

56

63

16

24

32

40

48

56

64

72

18

27

36

45

54

63

72

81

,
, ,
,
. ,
, ,
( ).
,
. , , , ,
.

. ( ), , . ,
, .
2

7
5

6
10

, ,
, .
, . , 10,
, :

62

10 =
, 10 ,
,
. ,
, 10 - ,
, :

10 =
:

10 =
:

10 =
, 10 ,
, , ( ).

, , , ,
, . , , , , , .
, .
:

63

, :
? , , :

8
,

.
: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
10. : 0, 1, 2, 3, 4, 5, 6, 7
... ? - .
7 10.
. 10
.
2

6
4

5
10

12 13
11

14

15

16 17
20

64

,
. ,
, ,
8 9:
0, 1, 2, 3, 4, 5, 6, 7, 10, 11, 12, 13, 14, 15, 16, 17, 20, 21,
21, 22, 23, 24, 25, 26, 27, 30, 31, 31, 32, 33, 34, 35, 36, 37,
40, 41, 41, 42, 43, 44, 45, 46, 47, 50, 51, 52, 53, 54, 55, 56,
57, 60, 61, 62, 63, 64, 65, 66, 67, 70, 71, 72, 73, 74, 75, 76,
77, 100...
100 , .

,
. ,
.
, , ,
7 7.
8 10.
, , 9
11.
10 12.
12 14.
14 16.
16 20.
24 30.
26 32.
32 40.
52 64.
64 100.
88 130.
100 144.
- 128 200.
256
400.

, , 100, 200 400.
. ,

65

100 = 10 10.
, 100 = 10
10 (. . 8 8 = 64).
,
, 64, 128 256, . . 400, , 4, 10 10, . ,
, -
.
.

22

10

24

16

20

25

32

40

26

64

100

128

200

28

256

400

512

1000

210

1024

2000

11

2048

4000

212

4096

10000

, .
.
, , .

66



64
512
4 096
32 768

, 3 725 :
3 725 = 3 000 + 700 + 20 + 5
:
3 725 = 3 1 000 +
7 100 +
2 10 +
5 1
:
3 725 = 3 83 +
7 82 +
2 81 +
5 80
:
3 725 = 3 512 +
7 64 +
2 8 +
5 1
, 2 005.
.

, . . . 67.
, 5 + 7 = 14.
.
135
+ 643
1000

67

10

10

11

10

11

12

10

11

12

13

10

11

12

13

14

10

11

12

13

14

15

10

11

12

13

14

15

16

: 5 3 10. 0, 1
. 1 + 3 + 4 = 10. 0, 1 . 1 + 1 + 6 = 10.
2 2 = 4
. 9. ?
, 3 3 = 11 = 9.
.

10

12

14

16

11

14

17

10

14

20

24 30

12

17

24 31

14

22 30

16 25

34

22

25
34

36

43

36

44

52

43

52

61

4 6 = 30, 24,
4 6 .

68

, , . . ,
, . ,
. 4 .
1

10

: 0, 1, 2, 3, 10, 11, 12, 13,


20, 21, 22, 23, 30, 31, 32, 33, 100, 101, 102, 103, 110 . .
,
. , .



16
64
256
1024

31 232 :
31 232 = 3 10 000 +
1 1 000 +
2 100 +
3 10 +
2 1

69

:
31 232 = 3 256 +
1 64 +
2 16 +
3 4 +
2 1
:
31 232 = 3 44 +
1 43 +
2 42 +
3 41 +
2 40
, ,
31 232 = 878 .
, , . , .
: 0 1. , , .
, . , . , .

10

, 1 10. , . , , 10. :

70

0, 1, 10, 11, 100, 101, 110, 111, 1000, 1001, 1010, 1011,
1100, 1101, 1110, 1111, 10000, 10001...
, . , , .
1 1.
2 10.
3 11.
4 100.
5 101.
6 110.
7 111.
8 1000.
9 1001.
10 1010
.
.





16
32

, 1 , .
.
.

20

10

22

10

100

23

10

20

1000

24

16

20

100

10000

71
()

25

32

40

200

100000

26

64

100

1000

1000000

27

128

200

2000

10000000

256

400

10000

100000000

29

512

1000

20000

1000000000

10

1024

2000

100000

10000000000

211

2048

4000

200000

100000000000

12

4096

10000

1000000

1000000000000

2
2

101101011010.
:
101101011010 = 1 2 048 +
0 1 024 +
1 512 +
1 256 +
0 128 +
1 64 +
0 32 +
1 16 +
1 8 +
0 4 +
1 2 +
0 1
:
101101011010 = 1 211 +
0 210 +
1 29 +
1 28 +
0 27 +
1 26 +
0 25 +
1 24 +
1 23 +
0 22 +
1 21 +
0 20

72

, 2 048 + 512 +
+ 256 + 64 + 16 + 8 + 2 = 2 906 .
, .

64

128

32
+

16
+

8
+

4
+

2
+

1
+


, . 8 ,
.
.
. , 10010110.
1
128
128 +

64

32

0 +

16

0 + 16 +

0 +

4 +

2 +

0 =

150


,
.

128

64

32

16

, , .
( 255)
. (128) . , .
, 64. .

73

: 0, 1.
, 0, . , 1, .
150.
150

22

22

22

128

64

32

16

6
8
0

0
1
0

,
. , . ,
, .
+

10

:
1100101
+ 0110110
10011011
: 1 + 0 = 1. : 0
+ 1 = 1. : 1 + 1 = 0, 1 .
: 1 () + 0 + 0 = 1. : 0 + 1 = 1. : 1 + 1 = 0, 1 . : 1 () + 1 + 0 = 10.
,
: 0 0; 1 .

13 11 :

74
1101
x 1011
1101
1101
0000
1101
10001111

143 .
(. . 1), , 0011
11. . 16 .

0000

0001

0010

0011

0100

0101

0110

0111

1000

1001

1010

10

1011

11

1100

12

1101

13

1110

14

1111

15

,

. ,
:

75

0 1;
0 1;
0 1;
0 1.

, ? ,
.

10000

16

10001

17

10010

18

10011

19

10100

20

10101

21

10110

22

10111

23

11000

24

11001

25

11010

26

11011

27

11100

28

11101

29

11110

30

11111

31

. ,
( ) 0 1. , 1 0, 0 1 1
0. :
1 0, 0 1, 1 0.
, ,

76

. ,
12000000, ,
. (12 000 000), , 12 .
. , 12

101101110001101100000000.
, (1011-0111-0001-1011-0000-0000)
(1011 0111 0001 1011 0000 0000).
.
, ,
. , , . 0 1.
. , 1. , 0.
. (), 1.
(), 0.
. , 1. , 0.
. ,
1. ,
0.
.
1948 . (John Wilder Tukey) (. 1915) , binary digit ( ) .
, . bigit binit,
, (bit).

(Tony Orlando) 1973 . ,


, , . ,
. , ,
, .
, , , : , , ,
. :
.
, . ,
, , ,
. , .
, ,
(
).
.
.

78

,
, . , . , ,
(bit), 0 1.
, , , . ,
, .

( ), (
) ( ).
: .
0 1. , ,
. .
( binary digit ),
, , . ,
,
,
.

. . ,
,
.
, .
, , . ,
,
, , , . ,
. . , ,
. , , . ,
,
, . :
, .

79

. , ,
. (, ), , , . ( ) . , , ,
, , , ,
, (Paul Revere) .
, :

, ,

, ,
, , ,
, .
,
,
, .
.

. , .
, . .

80

, .
,

. ,

.
. 1, 0. ,
.

( ),
. .
.
.
:

81

00 =
01 =
10 =
11 =
,
.
(redundancy),
(noise). ,
. . , , ,
, ,
.
, , .
,
, . .
,
. :

, !
, ,
,
!
, , .
,
. ,
. 1 , , 351 482,
, (, ).
, ,
, . , ,
, . -

82

(!).
, ,
. , , .
,
, ,
, , . (Roger Ebert)
(Gene Siskel). , ( ; ):
00 =
01 = ;
10 = ;
11 =
, 0 ,
, 1 .
.
, :
Impolite Encounter? , , ,
; , : .
, ,
, , 1 , 0
, . .
1
, 0 . - . , , 1 - , 0 , .
, ,
, 0 1.
.
, , , ,
, . ,

83

, . ,
, , .
, , ,
. .
000 = ; ;

001 = ; ;

010 = ; ;

011 = ; ;

100 = ; ;

101 = ; ;

110 = ; ;

111 = ; ;

, , ,
. , 8, .
0 7. .
,
, : -
(Leonard Maltin)?
.
, .
, , . 1 4
(, ;

84

). 7 , , .
000 =
001 = 1/2
010 =
011 = 1/2
100 =
101 = 1/2
110 =
111? . ,
. . 111, , ( , , ,
).
: , , , . -
? 2 ,
2, .
, .
:
000 =
001 =
010 =
011 =
101 =
110 =
111 =

1/2
1/2

1/2

, , , .
,
,
.
. , , :

85
000 =
001 =
010 = 1/2
011 =
100 = 1/2
101 =
110 = 1/2
111 =

,
(0 ?),
. .
Entertainment Weekly
, , -, , Web- . A+ F. , 13 . 4 .
0000 = F
0001 = D
0010 = D
0011 = D+
0100 = C
0101 = C
0110 = C+
0111 = B
1000 = B
1001 = B+
1010 = A
1011 = A
1100 = A+
(1101, 1110 1111) ,
16.
,
. ,
.
,
. , ? ,
103, 1000 , 000 999.

86

212? 107, 10000000. 212, 260? 104, 10000.


2 , .

21 = 2

22 = 4

23 = 8

24 = 16

25 = 32

26 = 64

27 = 128

28 = 256

29 = 512

10

210 = 1024


.
? ,
?
, , 2. . , ,
27 = 128. , 128 2 7. :
log2128 = 7.
, 2 128 7, 2 256 8. 2 200? , 7,64,
. 200
8.

87

, . , . .
. 35- , , .

1 2 3 4 5 6
7 8 9 10 11 12

, . 1 12.
DX-. 12 12 . 1, 0. 1 7 (1).
? , , , . (speed) . (fast),
. ASA (American Standards Association, ), 100, 200 400. ASA ,
.

88

24 . :
25
50
100
200
400
800
1600
3200

32
64
125
250
500
1000
2000
4000

40
80
160
320
640
1250
2500
5000

, ? 5. , 24 = 16
. 25 = 32 , .
.
2

-
6

25

32

40

50

64

80

100

125

160

200

250

320

400

500

640

800

1000

1250

89
()

1600

2000

2500

3200

4000

5000

35 .
,
.
, ,
. ,
1 6 .

, . .
,
( ). ( ) 2 6, ,
. , 4 5, 2, 3 6,
400 ASA.
.

2 3, 50, 100, 200
400 ASA.
8 12 . 8, 9 10
, 11 12 , .
, UPC (Universal Product Code,
), -, ,
. - ,
.

90

-
, ,
.
. , ,
, ,
- .
, UPC , . , - .
-, 30 , .
-,
Campbell
Soup.

5 10 0 0 0 125 1

UPC , , .
-
.
UPC . ,
- , ,
(optical character recognition,
OCR). -.
UPC , . ,
, .

91

, ?
, 1 , 0
. , , . - :
10100011010110001001100100011010001101000110101010111001011001101101100100111011001101000100101

, - 95 . .

101
0001101
0110001
0011001
0001101
0001101
0001101
01010
1110010
1100110
1101100
1001110
1100110
1000100
101

101. (left-hand guard pattern) ,


.
, . UPC
.
7
. 0
9, . 5-
( 01010), -

92

. ,
, - .
-.
7 ( 101). ,
- , .
UPC 12 .
, 7 .
.

0001101 = 0

0110001 = 5

0011001 = 1

0101111 = 6

0010011 = 2

0111011 = 7

0111101 = 3

0110111 = 8

0100011 = 4

0001011 = 9

: 7- 0 1. 7- ,
1, 0, , UPC
, . ,
. , UPC .

1 . - (parity).
7- UPC .

1110010 = 0

1001110 = 5

1100110 = 1

1010000 = 6

1101100 = 2

1000100 = 7

1000010 = 3

1001000 = 8

1011100 = 4

1110100 = 9

93


: , 0,
1, .
1 0. , 1
, .
UPC.
12 , Campbell Soup 10 3/4 . :
0 51000 01251 7
! , -! ,
: -
, . , . , ,
- ,
: 30 12 .
( 0) .
0 , UPC.
, ,
, 2. 5.
5 .
51000 Campbell Soup.
Campbell. (01251) ,
10 3/4 .
. , , ,
01251
.
UPC . , .
( 7)
(modulo check character) -

94

. , 11 (0 51000 01251 ) :
A BCDEF GHIJK
:
3 (A + C + E + G + I + K) + (B + D + F + H + J)
,
. . Campbell:
3 (0 + 1 + 0 + 0 + 2 + 1) + (5 + 0 + 0 + 1 + 5) =
= 3 4 + 11 = 23
, , 30. :
30 23 = 7
-
. .
, -, , , -
.
0 9 4 . , UPC 7.
- 11 95 . , UPC
, 9
, , - 11 113 , 10 !
,
.
, .
, UPC
.
, , .
.

95


0100111 = 0

0111001 = 5

0110011 = 1

0000101 = 6

0011011 = 2

0010001 = 7

0100001 = 3

0001001 = 8

0011101 = 4

0010111 = 9

.

1011000 = 0

1000110 = 5

1001100 = 1

1111010 = 6

1100100 = 2

1101110 = 7

1011110 = 3

1110110 = 8

1100010 = 4

1101000 = 9

7- ,
. .
, , .
, ,
, , .
. .
. .
.
, ,
3, 2 . ,
,
. .

:

96
A

, .
A

101100

101101101100

1101010100

110101100

11010110100

1011010100

10101100

11010100

1101100

1010101100

110100

101101100

1101101100

11010101100

100

1010110100

1010100
1100

110110100

10110110100

110101101100

101010100

110110101100

11011010100

10100

10110100

: 1 0,
.
0. , hi there :

, , ,
-:

97

101010100101000011001010101001001011010010000


. 6- .
,
.
3, 1 6.
1

code, , :

1, 0,
6-
.
code :
100100 101010 100110 100010
,
.
, , , ,
, ,
, , .
. .
, ,
.
, . 1 0.

10

? , . , ( IV . . .),
.

. . (,
) :
;
;
, .
.
, . , , , XIX
, :
;
.
.
, : (, , ).

100


, . XIX .

(16481716),
, (,
).
.
(George Boole) 1815 .

.
,
,
.

( ),
, , ,
. , 1849 . .
XIX . ( ), ,
,
(1847),
, (1854), .
1864 . , ,
. 49 .

101


.
, ,
, . ,
- (,
!).
.
( ,
), (, + ). , , . 3
, 2 , 5 ,
. , 3 ,
. ?
, , :
A=3
B=2A
C=B+5
D=3C
,
:
D=3C
D = 3 (B + 5)
D = 3 ((2 A) + 5)
D = 3 ((2 3) + 5)
D = 33
, .
,
.
.
, . , :

102
A+B=B+A
AB=BA

.
, . .:
A + (B + C) = (A + B) + C
A (B C) = (A B) C
, :
A (B + C) = (A B) + (A C)
,
: , , , . ,
,
. ( , ) , ,
. . .
. . , . , .
, ()
. .
, .
. , , , .
, . . , .
, . ,
.
() + .
, . ,
, ?

103

, . + .
+
(union) , . . , . , +
.

(intersection) , . . , , ,
. ,
. ,

( ).

, + .
,
, .
, . ,
+ . :
+ ( ) = ( + ) ( + )

, : . , , ,
.
, . , ,
, . 1
, , ,
. :
+=1

104

,
.
, ,
:
+++=1
, , :
+=1
1 , , -. , :
1
, . ,
:
1=
, , 0. , . . ,
. , , :
=0
: 1 0
. ,
:
1=
:
0 =0
:
0+=
,
. , :
1+=1

105

.

, (1 )
, 1:
+ (1 ) = 1
0:
(1 ) = 0
, . , .

:
=
:
. , . ,
:
X2 = X
, :
+=

.
.
:
;
.
, , . ? , :

106
=

= ,
,
.
: ( ) (
)
=
,
. :
( ) =
, :
( ) =
, , , :
=
! , , , .
,
. ,
, , , !
, , ( , 2 400 ).
. , : ,
, ; ,
, , ; . : -, , :
( ( + )) + ( (1 )) +

107

? : ! !
, ,
(OR)
(AND). ,
.
, .
,
. ,
(NOT). :
+ ;

1 ( -) .
.
:
( ( )) ( ( ))

,
. , . , , :
( ( ))

( ( ))

, . ,
!
, . , : 0 1. 1 : , . 0
: , .

108

. :
( ( + )) + ( (1 )) +
0 1, :
(1 0 (0 + 1)) + (0 0 (1 0)) + 0
,
, .
.
1, , 0 .
, , , . ,
.
:
00=0
01=0
10=0
11=1
, 1, 1. ,
. , 8.

:
0+0=0
0+1=1
1+0=1
1+1=1
1, 1.
, 1. .

109

:
(1 0 1) + (0 0 1) + 0 = 0 + 0 + 0 = 0
, .
. :
( ( + )) + ( (1 )) +
0 1:
(0 1 (1 + 0)) + (1 1 (1 1)) + 0
:
(0 1 1) + (1 1 0) + 0 = 0 + 0 + 0 = 0

,
( , . . , , ). :
(0 1 (0 + 0)) + (1 1 (1 0)) + 0
:
(0 1 0) + (1 1 1) + 0 = 0 + 1 + 0 = 1
1 !
, , ,
, , (
, ). , : , . .
, , . , .

110

, , , , .

, ( ), (in series).
, .

,
. : .

111

. ,
.
. ,
?.
.

, , ,
. , 0 , 1 .
,
. , , 0 , 1 . , . 0
, , 1 . .

: , . , .

112

, . :

.
.

(in parallel) . , , :

113

, . .
. : ? .

114

, 0, 1.

, , :

, , , :

, .
, : ,
, ; , , , ; , :
( ( + )) + ( (1 )) +
, ( -

115

), ( +),
8 :



_
, ( 1 ).
, ,
, .
,
( )
. +
,
( ) .
, . .

116

, ,
, . :

.
:

, , ,
.
.
,
, . -

117

, 15 . 1844 .
, .
, XIX . . ,
, .
(Charles Babbage) (17921871),
, , .
: ,
.
, .

11

, XX . , -, , , (gate)
. . , ,
: ,
.
, , : , , , .
:
( ( + )) + ( (1 )) +
:

120


XIX ., ,
. 1930- , (Claude
Elwood Shannon) (. 1916). (bit)

(binary digit).
, 1938 . ,
, , , .
,

. , , , , .
, ,
, :
( ( + )) + ( (1 )) +
, , :

121

( ( + )) + ( (1 )) +
, X Y:
X = ( + )
Y = (1 )
:
( X) + ( Y) +
, X Y
.
, . , ,
:
( (X + Y)) +
X Y:
( ((M ( + )) + ( (1 )))) + .
,
.
, , ,
. :

,
, .

122

. . ? 1 . ( , ), ( , ), . , : , , . ,
, . , ,
, ,
.
.
.

, , . , ,
.
. , (
), . , , . , , . ,
( ).
(input device) , .

123

4 ,
. (output
device) , , , .
. , .
, .
,
. ,
, , 6.
, , .
,
. . , , .
,
, , .
,
, , . , , ,
( ).
, , ,
. , ,
, , . , . .
. ,
, . , :

124

, .
,
, . , , :

, ,
(). , ,
() .
,
? ,

125

, , .
(
, , ), . . , .

, ,
. : . ,
:

V, 5 6. :

126

,
, ,
, . .

,
. ( ) -

127

. ,
:

.
(input) (output) .
V

(,
), , .
, . , , :

128

,
. , :

.
. , ?
, .
, . ,
.

129

, .

(double-throw).
:
, .
, :

130
V

. ,
, . :
V

131

, , . .
V

. ,
. .
V

132

, , .
, , . , . (AND).
:

. ( ) ( ). :
. : , , .
, .
, :
V

133

, :

V
V


, , .
: ,
. .

, . , . , :
V
V

, . , .
.
0, 1, :

134
0

1
0

0
0

1
0

1
1

,
.

. ,
.
V

, .

135

.
, :
V

, .
. , , , .
V

136

, .
V

, .
V

,
. ,
(OR).
:

137

,
.
, .
0, 1.
:
0

1
0

1
0

1
1

1
1

. 1, 1. ,
0, 0 .
, . , , .

138

, .
, ,
.

, . , , (inverter). ( ),
. :

, 0 ( ) 1 ( ) :
0

, ,
,
. -

139

. , , , . .
V

0, 1,
. , .
V


.
. , ,
.
V

( ),
. , , ,
1 ( ),
, 0 ( ), .
V

140

,
0, 1.
, 1. , 0.
, .
.
V

1,
, .
, .
V

, , .
V


( , ; , , ).

141

, .
, ,
, . , ,
, . , 1,
0. , 1,
0 . .
. ( ) (
). ( ) .
, , 2 4 (2-Line-to-4-Line
Decoder). 2 , 4 . 4 ,
1 .
, . 3 8, 4 16 . .

:
( (( ( + )) + ( (1 )))) +
+ , .

142

,
. , 2 4. (1 ).
: ! .
. ,
! .
. , - .

. ,
, (. . , ). , .
, .
V

143

, .
V

,
. , .
V

, .

144
V

. - (NOT
OR NOR). :

. . , ,
. - :

- .

,
-

145

, 1, 1, 0, 0.
:
V

, ,
. ,
.
, .

146
V

, .
V

, .

147


. - (NOT AND
NAND). - , , , .

- .
-

: -
. 1,
1, 0.

148

. -.
,
. .

. :

149

(buffer)
:

, , . .
.
0

, .
, , , .
. - ,
.
,
. , , ( 2 4), .
, ,
.
, 2 4, :

. .

150

. , 0 ( ) 1 ( ) .
-:
=

1, 0.
-:
=

0, 1.
. (Augustus
De Morgan) 9 . 1847 ., (
), . ,
, ( ).
.
, ,
,
.
:
AB=A+B
A+B=AB

.
, .
,

( -). ,

151

. ( -).


.
.
. , , .

.

12

, ,
(
), ,
, .
, ,
, . , , , , , , , .
, , , , ,
. , , :
, , ,
, .
, 120 . , . .

. , ,

154

.
.

.
,
, .
. , ,
245 673, .
.
5 3. , -
.
, .
+

10

,
. , , ,
.
0 0 0.
0 1 1.
1 0 1.
1 1 0 1 .
, .
+

00

01

01

10

,
, 2 : (sum bit)
(carry bit).

155

, .
+

.
+

, .
, .
,
,
.
, , :
01100101
+10110110
100011011
, 1 . , .
?
, .
8 , . . 0000-0000 1111-1111, 0 255. 8- 1-1111-1110, 510.

.

156
1
0
1
0

8 . ,
8- . () 0, () 1. 9
. . 1, 0. 9 , 8- 9- .
,
. ,
. , 0110-0101 1011-0110, ,
.
1
0
1
0

1-0001-1011 (
!).
,
. 8-
144 , 18 8

157

, .
, .
, - , 144 .
, , .
, .
.
+

, .

,
.
! . , , , -
:
+

. , , .
, ,
, .

158

- , .
-

-.


- ,
.

: ,
-.
, .

, .

159

, -
. ,
-. ,
.

(Exclusive OR, -). , 1,


, . , - , - :


, . - .
-

- ,
.
(coincidence gate)
(equivalence), 1,
. -, , .
.
.

160
+

-, .
-

-,

161

(half-adder) . ,
. . : . , , :
1111
+1111
11110
: 1 1 0, 1 .
- . .
.
, :

C
A

,
(, ).
. ,
.
.
.
, , ,
. , , ,
1.

162

, -,
1 .
(full adder)
( ):

CI
S
A
CO
B

, 144 . .
, - 2 . ,
- 6 . - , . . 8 .

, 18 . 8 . 144 .
.

163

1
0
1
0

.
, , .

CI

V
A
V

CO

,
, ,
. . , 0. ,
.
:

164

CI

V
A
V

CO

.
.
.
, , :

CI

A
V

CO
B

.
!
(Full
Adder, FA) , (Carry
Out, CO) (Carry In, CI)
S (Sum).

165

A B CI
FA
CO S

A B CI
FA
CO S

A B CI
FA
CO S

A B CI
FA
CO S

A B CI
FA
CO S

A B CI
FA
CO S

A B CI
FA
CO S

A B CI
FA
CO S

8-

, 8- . 0 7 0
7, S0 S7.

A7 ...A0

B7...B0
8-

CO

CI

S7...S0

. A0, B0 S0 (least-significant), A7, B7 S7 (mostsignificant).


0110-1001.
A7
0

A6
1

A5
1

A4
0

A3
1

A2
0

A1
0

A0
1

0
, .
27
0

26
1

25
1

24
0

23
1

22
0

21
0

20
1


, , 64 + 32 + 8 + 1 = 105.

166

8- :

A7 ...A0
B7...B0
8-
CO CI
S7...S0
8

, 8 .
A7 A0,
B7 B0 S7 S0.
8- ,
. 16 .




(
(
8 ) ( 8 ) ( 8 ) 8 )
8

B15 ...B8
A15 ...A8
B7...B0
A7 ...A0

CO 8- CI
CO 8- CI

S15 ...S8
S7...S0

8

16-


.
8
8 .
: ?

167

, , .
-, , ,
. , :
,
. . .
(ripple). (look-ahead)
.
- ( ),
! , 1930-, . . ,
. , , ,
, . 8- - 144 ( , ),
.

13

, , : ? , . . , . .
.
, , ,
.
,
:
253
176
???
. , 6 3, 1 5 6 13. 7. , 4. 7, 1 2
7 14. 7. , 1 2,
2 1 1 1. 0. 77.

170
253
176
77

?
, .
, . ( , )
. ,
,

.
, , , .
, .

, -, , 999:
999
176
823
999, . , 9999. (nines complement).
176 823. :
823 176. : ,
.
,
:
253
+823
1076

171

, 1 1000:
1076
+1
1000
77
. , , .
? :
253 176

. 1000.
253 176 + 1000 1000

253 176 + 999 + 1 1000
:
253 + (999 176) + 1 1000.
, , .
, .
, ?
:
176
253
???
, , : . ,
.
, ,
. :
176
253
77

172

, , .
(253)
:
999
253
746
:
176
+746
922
1
1000, . .
1000 923, 923
1000 .
, , 999,
999:
922
999
???
, , .
922 999. . , , 77:
922
999
77

. , , . , .
:
253
176
???

173

, :
11111101
10110000
?????????
1. 11111111 (. . 255).
11111111
10110000
01001111
, , . , (ones complement). ,
,
. : 0
1 , 1 0.

(negation) (inversion). ,
11 ,
0 1, 1 0.
2. 1 .
11111101
+01001111
101001100
3. 1.
101001100
+1
101001101
4. 100000000 (. . 256).
101001101
100000000
1001101

174

77.
, , . :
176
253
???
:
10110000
11111101
?????????
1. 11111111,
.
11111111
11111101
00000010
2.
.
10110000
00000010
10110010
11111111. ,
1 100000000.
, 11111111:
11111111
10110010
01001101
, .
77, , 77.
,
, . -

175

,
, , . . .
8- , :

B7...B0

A7 ...A0
CO

CI

8-
S7...S0

, A7 A0 B7 B0
, 8- .
. S7 S0 8 , . 9- ,
.
:
1
0

1
0

1
0

1
0

1
0

1
0

1
0

1
0

1
0

1
0

1
0

1
0

1
0

1
0

1
0

1
0

,
183 (10110111) 22 (00010110).
, ,
205 (11001101).

176


8- . , .
1
0

1
0

1
0

1
0

1
0

1
0

1
0

1
0

1
0

1
0

1
0

1
0

1
0

1
0

1
0

1
0

, ,
. , 8 . /.
, 8 . ,
255 ( ) ( ).
,
8- .
, ,
8-
8 .

, , -

177

, , . :


-. , - :
-

0,
- . ,
01100001,
01100001. 1,
. 01100001,
10011110.
-
(ones
complement):


7 6 5 4 3 2 1 0

, 8-
- :

178

A7 ...A0
CO

B7...B0
8-

CI

S7...S0

, /. 0,
, 1, .
( )
,
1, CI
1. ; CI 0.
CO ( )
-,
/.
0 ( )
, CO 1, . . 255.
, CO 1,
(
B) ( ). 100000000,
. / , CO 0.

179

,
. .
, , , : ?
, , . , , , , , 77 1001101. ,
, .
,
, , 1 0
.
,
. , ,
,
.
.
,
.
,
0 .
1000000 999999 3 2 1 0 1 2 3 999999
1000000
, , , ,
, .
,
. , 500 500 . ,
499
500 . , 500 , -

180

, 500 , , ,
, .
,
,
500 499. 1000
. ,
. , 500 999,
,
, 499. ,
500 999
. :
500 500
499 501
498 502

2 998
1 999
0 000
1 001
2 002

497 497
498 498
499 499
, , 5, 6, 7,
8 9, .

500 499 498 4 3 2 1 0 1 2 3 4 497 498 499
:
500 501 502 996 997 998 999 000 001 002 003 004
497 498 499
: .
(500) (499). 999 ( 1)
0. 999 , 1000,

181

, 000.
(tens complement).
10, 999 1. , 1. , 255 , 999, 744, 1, 745.
, , ,
. : , . , .
143 . 78
. , 143 78. 78 999 078 + 1, 922.
, 143 + 922, 65 ( ).
150 ,
150, 850.
065 850 915. 915 85
.

(twos complement). ,
8- , 00000000 11111111, 0 255
. , 8 , 1, .

10000000

128

10000001

127

10000010

126

10000011

125

11111101

182

()

11111110

11111111

00000000

00000001

00000010

01111100

124

01111101

125

01111110

126

01111111

127

, , 128 +127.
( ) (sign bit). 1 0 .
,
1 , ,
1. , 125 01111101. 125 ,
01111101, 10000010, , 10000011. . ,
1.
, ,
. 127 124.
,
10000001
+01111100
11111101
3.

183

. , 127 128. , 125 .


01111101
+01111101
11111010
1, . . 6. , 125.
10000011
+10000011
100000110
, 8- ,
. 8 +6.
,
, .
, .
(signed)
(unsigned). 8-
0 255. 8-
128 127. ,
. , : 8- ,
10110110. ?
: ?
74, 182.
, , .

14

, .
, ,
, . , , , . , ,
, .
, .

186

, ? , , .
, .
, ,
.

, , ,

187

, , .
: , , , , , , .
(buzzer). ,
.
.
.
V

, , 11. , :

, 1, 0,
. . , :

, , :
, , , !
, ,

188

, . ,
, , (
, , ,
. .).
?
: , .
, , 0, 1.
(oscillator). ,
. , . , , .
, , ,
. ,
, ,
, . , ,
.
0 1.
:

,
, (0 1).
1
0

,
0 1 . : , ( )
, .
? , ?

189

? , , . ,
, ,
.
, , .

1
0

, , . ,
0,05 , , ,
.

1
0
0

0,025 0,05 0,075 0,10 0,125 0,15

, . , 0,05 , 1/0,05 = 20 , . . 20 .
,
, , 100 . . (18571894),
,
, (). 20- XX
, .

190

, , 20 , 20 .
, . ,
.
,
-, . , - ,
.
-

, .

: -,
-
-.
(feedback). , . , .

-. - ,
0. . - 0, 1 - :

191

, . - 0
, 1, - , .

? , , .
.
, . ,
. , - 0.
. - 1,
0, . 1.

192

, .
. .

. , .

. , .
, , ,
. ,
. (flip-flop).
1918 .
(William Henry Eccles) (18751966) . . (F. W.
Jordan), , , .
. . , , . , ,

193

, , .
. ,
, . ,
, . : , , ! , , .
. RS (Reset-Set, -). -
RS- :
R

, ,

_
Q.
Q,

_
Q. Q 0, Q 1 . S R (set) (reset). S 1 (

_ ), Q 1, Q 0. R 1 (
_
), Q 0, Q 1. 0, Q
. .

_
Q

1
_
Q

194

, , , .
. RS- , 4.
.
:
S R _0. Q
_
Q, . . Q Q ,
, S R 0. , , S R 1,
. , , 1 . 1,
0,
_
, Q
Q. RS-, ,
R S 1.
RS- :
R

RS-, , , ,
. ,
, .
, ,
. .
. ,
0 1. .
0, . 1, .
0. ; .

195

, .

,
1, Q , .
0, Q
, . :
,
Q .
:

, . .

Q .

RS-, ,
:

196

, 1,
_
1. Q 0, Q 1.
0, :

RS-, 1:


, .

197

.
, . ? RS-:
1 , . ,
0: , 0 .
, 0, 0 1.
, .
Q


0, Q 0
_
(. . Q 1). 0, .
Q

1,
.

198

_Q , ,
Q .
0.
Q

, ,
1. .
Q

D-
(level-triggered D-type flip-flop). D
data ().
, , -

199

, 1 (
).

(Clock)
,
, 0 1.
Clock ,
.
Q

Clock

(data) D, Clock Clk.

Clk

_
Q

0
_
Q


(latch) D- . , . 1 .
16 , .
. , 12 8- . , , , ,

200

.
,
. ,
- ?
8 ,
2 -, 2 1
. ,
Clk:

D7

D6

Clk
Q7

D5

D4

D3

D2

D1

D0

Q1

Q0


Q6

Q5

Q4

Q3

Q2

8 .
D0D7, Q0Q7.
Clk. 0.
1, 8- D
Q. 8- , Clk
Clk 1.
8- 8 D 8
Q :
8
D7...D0
Clk

8-
Q7 ...Q0
8

A7 ...A0

B7...B0

8-

S7...S0

CO

201

CI

( ) A B , CI ,
S CO .
S , D 8- . Clk
.

D
8-

V
Clk

A
B
2--1 Sel

A
CO

B
8-

CI

S
8

2 1 (2-Line-to-1-Line Selector)
,

202

B
Q . 8- , . 2 1
8 :
B

(Sel) 1, B. ,
B, 0.
0, A. .

, ,
8 1- .
.

CO ( ). ( CO 1), .
, , , 16
, .
17.

. D-,
(Clear Clr), 0.
1, Q 0:

203

Clr
Q

Clk

Q 0
: , ,
.
? , 0
1 Clk? , . , 8 , 8- :

CI

8
D

V
Clr

8-

V
Clk

: Clk (
).

204

,
,
. . 0,
, 8- . . .
. , , , . , .
, D- . , Clk 0 1. ,
Clk 1, ,
_ Q Q.
, . Clk (edge-triggered),
, Clk 0 1. ,
Clk
. ,
Clk,
1.
Clk 0 1.
D- ,
RS-, :

Clk

205

, Clk
, , Clk . , D-
, , Clk 0.
,
Clk 1. :
Clk
0 1.
. Clk Q.

Clk

1 .

Clk

,
Clk 1. , Clk 0. 1 Clk:

206

Clk

, Q 1.
(,
), Q .

Clk

_
Q Q Clk 0
1.
D-, ,
, .
0 1.

Clk

_
Q

0
_
Q

, Q ,
Clk 0 1, . .
( 1 0). :

207

D
Clk

,
.
D-, ,
, . ,
. 0 1:


Clk D-, _
, Q D:

D
Clk

Q
Q


! (
. , . ,
. , ,
. , , .)
, , .
_ , Clk Q 0, . . Q, D, 1.

Clk

_
Q

208

Clk 0 1, Q D.

Clk

_
Q

_
Q 0,
D. Clk 1.

Clk

_
Q

Clk, , , .

Clk

_
Q

Clk 1._ D 0, Q 0, Q 1.

Clk

_
Q

209

D 1.

Clk

_
Q

, ,
: , Clk 0 1, Q 0 1, 1 0. :
Clk

D/Q

Clk 0 1,
_ D ( _ Q) Q, Q, , D
Clk 0 1.
20 (. . 20 ), Q _, . . 10 .
, Q ,
(frequency divider).
, Clk
.
:

210
Q1

Clk

D
Clk

Q2

Clk

D
Clk

Q3

D
Clk

, .
Clk

Q1

Q2

Q3

?
. .
Clk

Q1

Q2

Q3

?
90 4- . 0 15.

0000

0001

211
()

0010

0011

0100

0101

0110

0111

1000

1001

10

1010

11

1011

12

1100

13

1101

14

1111

15

, 0
,
. 8 ,
0 1 , ,
. .
Clk (increment) 1.
9 .

Clk
Q7

8-
Q6

Q5

Q4

Q3

Q2

Q1

Q0

(ripple counter),
Clk . , .
(synchronous),
.

212

Q0 Q7. , (Q 0) . , 8 .

, :
Clk

00000000 00000001 00000010 00000011 00000100

Clk , ,
.
, . .
Clk 8- , ,
. 11111111 (255 ), 00000000. , . 8- . , 0 (
, ), . , .
, 256
. , 10 . , , 256 10, 25,6 .
, , . D-
, (edgetriggered D-type flip-flop with preset and clear):

213

Clr

Pre

Clk

Pre Clr ,
Clk . 0.
Pre
_
1, Q

1,

0. _
Clr 1, Q 0, Q 1.
RS-, Pre Clr
1.
D- .

Pre

Clr

Clk

_
Q
Q

1
0
_
Q

D-, ,
:

214

Clk

Pre

Clr

, ,
. , , , , . . .

15


(data paths). 8- . , ,
. 8-
. ,
8 .
8? 6, 7, 9, 10?
: ,
12, 8- .
8- .
.
, , ,
(, , ), 8
(byte).
IBM 1956. bite (),

216

y, bit (. . ).

. 60-,
IBM System/360,
8 .
8- , 00000000 11111111. 0 255
127 128 ( 2). 1 28,
256, .
, 8-
. IBM , BCD, 23. , , 8-
, ( , , ) 256 . - , 256. , 1 (, , ),
2 ,
216, 65 536 .
, . . 4 ,
(nibble nybble),
.

, . 8-
10110110, , , .
, , . , . 8
. -

217

, ,
. . 10110110:
1

x 128

x 64

x 32

x 16

x8

x4

x2

x1

0 +

4 +

2 +

0 =

128 +

0 + 32 + 16 +

182

, . ,
. 182 :
182
128
1

54

54

22

64

32

16

6
8
0

0
1
0

8 . ,
, .
8 , 0, 1, 2,
3, 4, 5, 6 7.
. 3- ,
.

000

001

010

011

218

()

100

101

110

111

(, 10110110)
, . .

10110110
2 6 6
, 10110110 266. , ,
. , .

00000000 11111111. 000 377. , ,
, . , 16- :

1011001111000101
1 3 1 7 0 5
:

10110011
2 6 3

11000101
3 0 5

, -

219

,
. , 4 2 ( ), 2 4
( ).
, . - !
(hexadecimal). ,
. :
0 1 2 3 4 5 6 7 8 9 10 11 12
, , 8 9:
0 1 2 3 4 5 6 7 10 11 12
4, 5, 6 7:
0 1 2 3 10 11 12
, , 0 1:
0 1 10 11 100

, . :
0 1 2 3 4 5 6 7 8 9 ? ? ? ? ? ? 10 11 12
10 16. , 6 . ? ? , ,
, :

, ,
, : ( 10 ), ( 11 ), (. . 12) ,

220

( 13), (
14 ) , , , 15- .
. ,
, . , , .

0000

1000

0001

1001

0010

1010

10

0011

1011

11

0100

1100

12

0101

1101

13

0110

1110

14

0111

1111

15


10110110:

10110110
6

.

10110110
6

11000101
5

221

( , ), , , , .
, .
:
0 1 2 3 4 5 6 7 8 9 A B C D E F 10 11 12

, .

0000

0001

0010

0011

0100

0101

0110

0111

1000

1001

1010

10

1011

11

1100

12

1101

13

1110

14

1111

15

, 10110110 6, . , :
10110110
,
2312

222
,
266
,
182

. ,
6
. , , , , . , , :
B6HEX

, h:
B6h
16.

1
16
256
4 096
65 536

9A48Ch :
9A48Ch = 9 10000h +
A 1000h +
4 100h +
8 10h +
C 1h
16:

223

9A48Ch = 9 164 +
A 163 +
4 162 +
8 161 +
C 160
:
9A48Ch = 9 65 536 +
A 4 096 +
4 256 +
8 16 +
C1
, (9, A, 4, 8, C)
. 9 9 ,
. , , 10
.
,
:
9A48Ch = 9 65 536 +
10 4 096 +
4 256 +
8 16 +
12 1
631 948. .
4 .

4096

256
+

16
+

1
+

79ACh. , A C 10 12, :

224
7
4 096
28 672 +

256
2304

16
+

160

1
+

12

= 31 148

, .
255, , . .
. , 16, . 182.
16, 11 ( ) 6 . , 6h.
65 536, .
:

4 096

256

16


. .
4 096, . ,
. , 256. 31 148:
31 148

2476

172

12

4 096

256

16

10

12

, 10 12
79ACh.

225

, :
. 31 148 4 096,
7,6044921875. ,
4 096 7 ( 28 672) 31 148
4 096 0,6044921875, . . (
,
!).
0 65 535
256, . 16. :

256

16

16

.
,
. 51 966:
51 966
256

12

202

254

16

16
10

15

14

12, 10, 15 14 , CAFE, ,


!

226

.
+

10

10

11

10

11

12

10

11

12

13

10

11

12

13

14

10

11

12

13

14

15

10

11

12

13

14

15

16

10

11

12

13

14

15

16

17

10

11

12

13

14

15

16

17

18

10

11

12

13

14

15

16

17

18

19

10

11

12

13

14

15

16

17

18

19

1A

10

11

12

13

14

15

16

17

18

19

1A

1B

10

11

12

13

14

15

16

17

18

19

1A

1B

1C

10

11

12

13

14

15

16

17

18

19

1A

1B

1C

1D

10

11

12

13

14

15

16

17

18

19

1A

1B

1C

1D

1E

, .
4A3378E2
+ 877AB982
D1AE3264
13, 2.
8-
1. , 8, 9, A, B, C, D F, 1. , 99h

227

153 ( ,
) 103
( ).
- 99h
99! - , ?
, ?
23, .

16

,
. , , . .

(, , ), .
, - .
- . ,
, , ,
.
. , , . :
, . ,
, -, . ( . ., ,
. ?) .

230

, .
, . , . , . . , .

. , 1 . , , , .
1 , 2, 3.
14 D- , ,
-:
Q

Clk

Clk 1, Q
. Clk 0, Q
.
,
Clk 1. :

Clk

_
Q
Q

0
_
Q

231

14 -,
1
.
, :

, Q
(Data Out, DO), Clk ( ) (Write, W).
, (Data In, DI) , .
0,
. , 1,
0. 14,
, .
, 1- :
DI
DO
W

1- . :

W DI

W DI

W DI

W DI

W DI

W DI

W DI

W DI

DO

DO

DO

DO

DO

DO

DO

DO

232

8- 8 8 . ,
,
0. 8 , 1, 0. 8-
:

DI7

DI6

DI5

W
DO7

DI4

DI3

DI2

DI1

DI0

DO1

DO0

8-
DO6

DO5

DO4

DO3

DO2

, 1- :

DI

8-

DO

1-
. ,
. 8 , .
, 8-
( 8- ), 8 1-
, .
, .
, 1- .
,
. ,
. , , . , ,
.
? 8
8 : 000, 001, 010, 011, 100, 101, 110 111.

233

: 1- 8, 3, 1 , .
W DI

W DI

W DI

W DI

W DI

W DI

W DI

W DI

DO

DO

DO

DO

DO

DO

DO

DO

8
3 . ,
, , .
? - ,
. ( 14).
,
: .
2 1.
8 1:

D7

S0
S1

D6

D5

D4

D3

D2

8 1

S2

D1

D0

234

8 , 3
(Select). , , . Select 000, D0. 111 D7, 101
D5. .

S2

S1

S0

D0

D1

D2

D3

D4

D5

D6

D7

8 1 , 4 8- :
D0
D1
D2
D3
D4
D5
D6
D7
S0
S1
S2

235

,
- . , S2
S0 1, S1 0.
S0, S 1 S2, 1. , 0. ,
0, D5 = 0, 1 D5 = 1.
. ,
101, D5.
, ? 1- , ,
DI DO.
,
8 1:
W DI

W DI

W DI

W DI

W DI

W DI

W DI

W DI

DO

DO

DO

DO

DO

DO

DO

DO

D7 D6 D5 D4 D3 D2 D1
S0
8 1
S1

S2

D0

. , , , .
. D 1- ,
,
.
, ( ) :

236

W DI

W DI

W DI

W DI

W DI

W DI

W DI

W DI

DO

DO

DO

DO

DO

DO

DO

DO

,
, , 3 8 (3-to-8 Decoder).
11 .
3 8 .
0, , S0, S1 S2.
.

O0
O1
O2
O3
O4
O5
O6
O7

S0
S1
S2

237

S0, S 1 S2, . ,
101, , , 0. 1,
1, 0, 0.
.

S2 S1 S0 O7

O6

O5

O4

O3

O2

O1

O0

- 0

- 0

- 0

0
-

- 0

- 0

, .

238

S0
S1
S2
7

3 8
6

W DI W DI W DI

W DI

W DI W DI

W DI W DI

DO

DO

DO

DO

DO

DO

DO

DO

D7
S0
S1
S2

D6

D5

D4

D3

D2

D1

D0

8 1

:
. ,
(address). 3- , , 8
. ,
.
( ) , 8 1
.

/ (read/write memory),
, (random
access memory, RAM). RAM 8 1- .
:

A0
A1
A2

DI

8 1 RAM

DO

239

-
. / , ()
(), . ,
.
:
101,
100.
RAM
RAM (RAM array). , 8 1, . . 1 . ,
, .
RAM -. , , 2- .

A0
A1
A2

DI

A0
A1
A2

DI

8 1 RAM

DO

8 1 RAM

DO

,
, 8 2.

240

A0
A1
A2

DI0
DI1

8 2 RAM

DO0
DO1

- 8 ,
2 .
RAM 8 1
2 1 1 2.

1 2
DO0

A0 A1 A2

DI

DO1

A0 A1 A2

8 1 RAM

8 1 RAM

DO

DO

D0

D1

DI

2 1
S

, ,
RAM 8 1

241

. , RAM 16 1
A0
A1
A2
A3

DI

16 1 RAM

DO

1- .
, ,
.
( 1- 8- ), .
,
8 , 16 . . :
RAM = 2
RAM,
, , :

10

Addr

DI

1024 8
RAM

DO

8 196 ,
1 024 .
10 , 1024 = 210.
, 8 8 .
, , 1 024 , 1 024 , 1
. . , , , -

242

. , 1 000 , 1 000 . 1 024 , 1 000.


,
,
. 10 10, 100, 1 000, 10 000,
100 000 .. 2 2, 4, 8, 16, 32, 64 ..
10 2.
. , 1 000 1 024, :
210 103.
. , 2 () 10. 1 024 . . , 1 024 , 1 , 1 , 1 . ,
, , 1 1 000 .
1 8 10 .
210 . , . :
1 = 1 024 = 210 103
2 = 2 048 = 211
4 = 4 096 = 212
8 = 8 192 = 213
16 = 16 384 = 214
32 = 32 768 = 215
64 = 65 536 = 216
128 = 131 072 = 217
256 = 262 144 = 218
512 = 524 288 = 219
1024 = 1 048 576 = 220 106

, 1 024 , 1 024

243

(
), MB. .
1 = 1 048 576 = 220 106
2 = 2 097 152 = 221
4 = 4 194 304 = 222
8 = 8 388 608 = 223
16 = 16 777 216 = 224
32 = 33 554 432 = 225
64 = 67 108 864 = 226
128 = 134 217 728 = 227
256 = 268 435 456 = 228
512 = 536 870 912 = 229
1024 = 1 073 741 824 = 230
(
), 1024
( GB).
, ( ) 240 ( 1012) = 1 099 511 627
776 . TB.
, , , .
, , (250 = 1 125 899 906
842 624 , . . 1015 )
(260 = 1 152 921 504 606 846 976 , . . 1018, ).
,
(1999 .) ,
, 32 64 ( 128) ( RAM, ). 33 554 432, 67 108 864 134 217 728 .
,
. :
64 , ,
. 33 554 432 -

244

32 . 1 073 741 824 , .



( , ), . ,
,
, . , , .
, 56 56 .
, , . 65 536 :

16

Addr

DI

64K 8
RAM

DO

64 , 32 128? 65 536
, 216.
16- , . . , 2 . 0000h FFFFh.
, (
1980-)
64 , , , . ? ,
. 9 , RAM 64K 8
5 !
, . 16 , 8 ,
,
8 8- .

245
RAM 64K

1
0
A 15 A 14 A 13 A 12 A 11 A 10 A 9

A8

A7

A6

A5

A4

A3

A2

A1

A0

1
0
D7

D6

D5

D4

D3

D2

D1

D0

(0). .

, . ( ), . ,
.

25 2 1 16 , 8
, ,
. :

25

16

16

25 2 1

16

8
16

Addr

DI

64K 8
RAM

DO 8

246

,
, , ( ).
, . , , 8 , , -
.
RAM 64K 8
:

16

Addr

DI

64K 8
RAM

DO

, 16 65 536 . 8 ,
.
,
D .
, RAM 64K 8,
65 536 , . :
.
.
.
11 ,
, . ,
, , .

247

.
, 64K 8,
,
?
,
! , .

(volatile).
.

17

, .
, , .
, ,
, .

: , ,
,
.
,
. , . : .
,
, ,
, .
,
, , , . ,
,
. -

250



. , , .
14.
8- , , 8 :

B
A
8-
CI

S
8

V
Clr

DI
8-

DO

V
Clk

,
8- . , , 8
, . ,
. .

.
, . , , , 8
, 255.

251

, 14 ,
. , Clk 1,
0. Clk 1
.

.
, Clk 0 1.
, ,
.
,
, (accumulator).
,
. , ( ).
. ,
100 .
. ,
, ,
. .
? 16 , 5
RAM 64 ,
.
,
.

16

Addr

DI
W

64K 8
RAM

DO

252

100 , , .
, : RAM
. ,
DO . (
14) . DI :

Clk
16-

Clr

16

Addr 64K 8 DO 8
RAM
8

A
B
8- CI

S
8

DI
8-
Clk

Clr
DO
8

, .
, , 16- 0000h.
0000h.
100 ,
0000h 0063h.
. ( -

253

) .
!
, ,
. 0000h.
. 00h, .
, . .
, 0 1.
,
0 1 . -, , -, 1, . 0
1 ,
, 0001h. ,
0002h. . .
,
. ,
, . , . .
: ! - , , ,
.
FFFFh, , , .
. 8- . 255 ,
, .
, ( 2), 128

254

127. (, 16-)
RAM, , ,
8 . , .
, ,
. .
, 100 ,
50 ? ,
,
?
.
,
, , , .
, 50 ,
100 .
.
.

.
, , ,
.
RAM,
.
, , , . , , Clk Clr. ,
RAM, W ().
, ,
. ,

. , .

255

Clr

16-

Addr

16

Clk

DI

64K 8 DO
RAM

W
A
B
8- CI

S
8

DI
8-

Clk
DO
Clr

, : ,
. ,
, 0000h. :
0000h:

27h
A2h
18h

0004h:

1Fh
89h

0007h:

33h
2Ah
55h

. .
.

256

. , , ,
.
. , . (,
. - , - . , .)
, . , .
, .
: 8- , .
. , . .
. -,
. , - .
,
:
0000h ;

0001h ;
0002h ;
0003h;
0004h ;
0005h ;
0006h;
0000h ;
0001h ;
0002h ;
0003h;
.

257

: , , 0000h. , .
.
. , , , .
? , , . ,
: , ,
.
, ( )
RAM,
. , , ,
. , .

Addr
64K 8 DO
RAM

16-

16

Addr
8

DI
W

64K 8 DO
RAM

258

,
.
, , .
,
, . . , :

10h

11h

20h

FFh



:
0000h:

0004h:

0007h:

10h

20h

20h

11h

10h

20h

11h

10h

20h

20h

11h

000Bh: FFh

, .
,
,
, -

259

. (instruction code), . .
, 8- . . . 8- 8- .
8- . , , 2
1. :

Addr
64K 8 DO
RAM
Clr
Clk

16-

16

Addr
64K 8 DO
DI RAM
W

8- CI

S 2 1
8

Clr

8-
Clk
8

260

, 8- .
RAM 16- . , ,
. 8-
( ), ( ). -
2 1. , ,
, (
).
, , , . .
(control signals).
Clk Clr 16- , Clk Clr ,
W S 2 1.
, ,
. , S 2 1 0 ( ), .
W 1, .
.
,
, . .

10h

11h

20h

21h

FFh


C0.
21h, , ,

261

, (CI) 1.
C0 , :

Addr
64K 8 DO
RAM
Clr
Clk

16-

16

Addr
DI 64K 8
RAM
W

DO

CI 8-

C0

S 2 1
8

Clr

8-

Clk
8

, 56h 2Ah,
38h.
:

262

0000h:

10h

0000h:

56h

20h

2Ah

21h

38h

11h

FFh

56h.
56h 2Ah, . . 80h.
(38h)
. C7h 80h, (CI)
1.
C7h
+80h
+1h
48h
48h (
86 + 42 56 = 72).
.
: 8-
( , . .), 16- .
. 16- :
76ABh
+232Ch
16- ,
:
ABh
+2Ch
D7h

263

:
76h
+23h
99h
99D7h. 16-
:

0000h:

0000h: ABh

10h

20h

11h

10h

76h

20h

23h

11h

FFh

2Ch

D7h 0002h, 99h


0005h.
, . , 76ABh 236Ch? :
ABh
+6Ch
117h
:
1h
+76h
+23h
9Ah
9A17h.
, 16- ?
.

264

,
. ? , 1- ,
.

. . 8- . CI 0, CO
(
).
16- ,
.
CI 0, CO
. .
. , .
, 0.
16-
. 1 .
1 ,
.
16- . .
CI .
7 :

10h

11h

20h

21h

22h

23h

FFh

265

, , . CO
. ,
, .
1
, 1
.
,
1,
.
,
. :

0000h:

10h

0000h: ABh

20h

11h

10h

76h

22h

23h

11h

FFh

2Ch

16- .
, ! 8- . 16-, 24-, 32-, 40- . . , 32-
7A892BCDh 65A872FFh :

266

0000h:

10h

20h

0000h: CDh
FFh

11h

10h

2Bh

22h

72h

11h

10h

89h

22h

A8h

11h

10h

7Ah

22h

65h

11h

FFh

, .
, , , . 7A892BCDh, ,
0000h, 0003h, 0006h 0009h, . 0002h, 0005h,
0008h 000Bh.
,
. ,
8- ,
8- . ,
, , .
8- , , .
,
, 0000h.
, . ,
,
.

267


, . (!),
.
! , 7 .

10h

11h

20h

21h

22h

23h

FFh

1 .
, ,
3 . ,
16- . , , ,
. , ,

, . ,
.
, ,
.
:

0000h:

10h

20h

11h

FFh

0000h: 4Ah
B5h

, , 3 :

268

0000h:

10h
00h


0000h

00h
0003h:

20h
00h

0001h

01h
0006h:

11h
00h


0002h

02h
0009h:

FFh

, , ,
16- .
0000h, 0001h 0002h.
, 16-
76ABh 232Ch. 0000h 0001h,
0003h 0004h. 0002h 0005h.
,
, .

4000h:

76h
ABh

4002h:

23h
2Ch

4004h:

269


.
64 . ,
,
:

0000h:

01h
0003h:

20h
40h
03h

0006h:


10h
0009h:
4001h
40h

11h
40h

10h


4000h

40h
00h


4003h

000Ch:

4005h

000Fh:

21h
40h


4002h

02h
11h
40h

05h

4004h

04h
0012h:

FFh

,
4001h 4003h, 4005h.
( 4000h 4002h)
, 4004h.

.
,
, .
, 8- .
3- .
, , . 16-
:

270

16

Addr

DO

Clk

Clr
16-

Clk

8-

64K 8
RAM

8-

Clk
16
8
8

8-

Addr
64K 8
DI RAM DO
W

Clk

(instruction fetch). 3 . ,
. - , , .
,
, . , , ,
, , . , ,
.
, .
, . , ,
- .
,
, , 64- . , ,
1 ,

271

. -
? - .
:
. ,
3 , ,
. ,
.
2 1, RAM.
, , 16- . -
, . 16- . ,
RAM:
8

16

16

Addr

16
8

DO

Clk

2 1

Clr
16-

Clk

8-

DI 64K 8
RAM
W

8-

Clk

Sel

16

8-

Clk

!
RAM. , , 8- :

272
0000h: 10h
00h


0010h

10h
20h
00h

0011h

11h
21h
00h

0012h

12h
11h
00h


0013h

13h
000Ch: FFh
..
.

0010h: 45h
A9h
8Eh

, 0000h,
16-
.
000Ch.
, , ,
13 , . ,
0010h.
, . ,
. , ,
000Ch
. ,
. 0010h, . -

273

, , .
--, . ,
. ,

, . , , , 0020h, 0030h:
0020h: 10h
00h


0013h

13h
20h
00h

0030h

30h
20h
00h

0031h

31h
11h
00h


0032h

32h
FFh
..
.

0030h: 43h
2Fh

:
0013h, .
: 0000h ,
0010h , 0020h ,
0030h . , , 0000h.
000Ch . ,

274

.
, 000Ch
3 , . . 000Fh, 3- 0012h, 0015h, 0018h, 001Bh 001Eh.
11h
, 00h 23h?
0023h. ! , . ,
001Eh 0021h, 0020h,
.
,
000Ch ?
, , .

10h

11h

20h

21h

22h

23h

30h

FFh

.
. RAM
.
(branch).

000Ch:
000Ch: 30h
00h
20h

0020h

275

30h . 16- ,
, .

0000h .
, .
0020h. ,
, ,
.
16- . , ,
.
Pre Clr
D- ,

Clk

Pre

Clr

, ,
. Pre Clr 0. Pre
1, 1 Q. 1 Clr,
Q 0.
(
), :

A
D
Clk

Pre
Clr

Q
Q

276

, 0. Pre
0. 1,
Clr. ,
.
1 1, Pre 1, Clr 0. 0, Pre 0, Clr 1. , Q A.
16- 16 . , ,
.
. 16-
, ,
2 1 ( RAM), 16- .
8

16

16
16

2 1

Clr
16-

Clk

Clk

8-

16
8

Addr
DO 8
64K 8
DI RAM
W

8-

Clk

Sel

16

8-

Clk

, 1 : 30h
.
. ,
.

277

(conditional jump). , : 8- , , A7h 1Ch?


8- 16-
. , 16- . , .
1000h: 00h

16-

A7h
1002h: 00h

16-

1Ch
1004h:

00h

16-

00h

1Ch 28. , A7h 1Ch


28 A7h. 1004h 1005h
16- . :

0000h: 10h
10h


1005h

0009h: 10h
10h

05h

04h

0003h: 20h 1001h
000Ch: 22h

10h
10h
01h
0006h: 11h
10h

1005h


1004h


1000h

00h
000Fh: 11h
10h

05h
0012h:



1004h

04h
..
.

1004h 1005h .
16--

278

A7h 1. 1004h
1005h ,
27 . ,
27 , 0012h,
28
.
, , . :
,
, . -
,
.
0012h ?
0000h:
0012h: 30h

0000h

00h
00h

, .
1004h 1005h , A7h 1.
, 1004h 1005h A7h, 2.
A7h 1Ch,
, , !
, , . . . . 1 , , ,
1, 8- 0.
8-
Clr
DI

DO

Clk

279

8- - 1,
0. , Clk
,
, .
, ,
(Zero flag). : 1,
0; 0, 1.
4 .

10h

11h

20h

21h

22h

23h

30h

31h

32h

33h

34h

FFh

, 0
, 0.
, ,
, ,
0. , . 0 16- 1, 0.
, :

280
0012h: 10h
10h


1003h

03h
0015h: 20h
00h

001Eh

1Eh
0018h: 11h
10h


1003h

03h
001Bh: 33h
00h

0000h,
1

00h
001Eh: FFh

,
0004h 0005h 16- A7h,
1.
1003h, . . 1Ch.
001Eh. , 001Eh , . FFh 1Ch 1Ch
. 1Bh. 0, 0. 1Bh
1003h. 0.
0, , 0000h.
:
. ,
,

.
0004h 0005h
A7h 2. 1Bh FFh, 1Ah. 0, .

281

28- 0004h 0005h


A7h 1Ch. 1003h 1.
FFh 0, - 1! 0 , , . !
: ,
!
, .
.

. ,
. . , 8- . , ,
16-, 24-, 32-
. , , .
, ,
.

(digital) , . (analog) ,
, . : ,
.

.
4 : , ,
.
64- RAM.

. ( ) .
(processor) ,
, (Central
Processor Unit) (CPU). , -

282

, . . , -, ,
18.
!
, , 8-.
8
. 16 RAM.
8-, 65 536,
256 .
.
. 8- 8- - (Arithmetic Logic Unit) (ALU). ,
.
( ) - , . 16- (program counter).
, , . (hardware) . ,
,
(software).

,
. ,

, .
(code),
. . , (data), . . , . . , 1. (, 10h ),
, . -

283

,
, .
, ,
, ,
.
-
, .
.

Load

10h

LOD

Store

11h

STO

Add

20h

ADD

Subtract

21h

SUB

Add with Carry


22h

ADC

Subtract with Borrow

23h

SBB

Jump

30h

JMP

Jump If Zero

31h

JZ

Jump If Carry

32h

JC

Jump If Not Zero

33h

JNZ

Jump If Not Carry

34h

JNC

Halt

FFh

HLT

,
. ,
1003h :
LOD A,[1003h]

284

A [1003h], , . . , , ( ) ( ) ( ) .
, 1003h,
1003h.
001Eh :
ADD A,[001Eh]
1003h :
STO [1003h],A
: STO , , : 1003h. , 0000h, 1 :
JNZ 0000h
,
.
.

, ;
. ,
(, ), :
0000h: LOD A,[1005h]
:
1000h: 00h, A7h
1002h: 00h, 1Ch
1004h: 00h, 00h
,
, ,

285

.
:
1000h: 00h, A7h, 00h, 1Ch, 00h, 00h
:
0000h:

LOD A,[1005h]
ADD A,[1001h]
STO [1005h],A
LOD A,[1004h]
ADC A,[1000h]
STO [1004h],A
LOD A,[1003h]
ADD A,[001Eh]
STO [1003h],A
JNZ 0000h

001Eh:

HLT

1000h:
1002h:
1004h:

00h, A7h
00h, 1Ch
00h, 00h


.

, . , , , 2000h,
1000h, . (labels):
BEGIN:

LOD A,[RESULT + 1]
ADD A,[NUM1 + 1]
STO [RESULT + 1],A
LOD A,[RESULT]
ADC A,[NUM1]
STO [RESULT],A

286
LOD A,[NUM2 + 1]
ADD A,[NEG1]
STO [NUM2 + 1],A
JNZ BEGIN
NEG1:

HLT

NUM1:
NUM2:
RESULT:

00h, A7h
00h, 1Ch
00h, 00h

NUM1, NUM2 RESULT , 2 .


NUM1 + 1, NUM2 + 1 RESULT + 1
. NEG1
HLT: negative one, . . .
, , ,
, .

:
BEGIN:

LOD A,[RESULT + 1]
ADD A,[NUM1 + 1]
STO [RESULT + 1],A

LOD A,[RESULT]
ADC A,[NUM1]
STO [RESULT],A

LOD A,[NUM2 + 1]
ADD A,[NEG1]
STO [NUM2 + 1],A

; 1

JNZ BEGIN
NEG1:

HLT

NUM1:
NUM2:
RESULT:

00h, A7h
00h, 1Ch
00h, 00h

287

(assembly language).

, .
,
.
.
,
, , , ( ). ,
,
, ,
. . , .
, , . .
.

.
, , , . , ,
. , , 11h (
) 10h ( )?
, . . , .
,
, , ,

. ( )
.
.
, A7h 256
.
:
1003h 0. ,
FFh. 0,
.

288

, , , . ,
, .
: , .
: .
, .

.
. ,
. 23.
, ,
, 100 .
, , ,
. , , ( 1930- ) .
XX .
, ,
, , . . .
. 64 5 .
, .
. ,
, . 12 , . ,
- .

18


. , .
, .

. -, ,
, .
, .

290

, 1200 . . .
,
. (15501617),
. . , ,
, , , .
.
400
, ,
. ,
(15811626), (1574
1660), 1976 .,
Keuffel & Esser
().
,
, ,
. . , 1620 . (15921635), . , .
(16231662) (16461716).
, , ,
8- , , ( ) 8
. , , -

291

. , , , !
. , , . ,
13. ,
, XIX .
1801 . ,

, (17521834). ,
, .
- , 10 000 .
XVIII . ( 40- XX .)
(computer) , . , . , ,
, , . ,

.


(17911871), ,
,
.

-

292

(
). ,
.
(differences).
1820 . ,
, ,
. (Difference
Engine) . , .
10.

- (, ), . 1833 . .
.
(Analytical Engine) , (
). ( )
( ). , . , ,
. (18151852) ( ,
): , , ,
.
-, , . :
,

293

. ,
;
. , . .
.
1853 .
( ),
1930- , . ,
, . XX .,
.
. , 10
. 1880 . , . 7 .
, 1890 .
10 , (Herman
Hollerith) (18601929),

1880 . .

6 5/8 3 1/4 (


,

).
288 24 12 . , . ,
.

294

, ,
, : 288 288 .
.
, ,
( ,
). . , .
.
: 0 4, 5 9,
10 14 . .

5- . 28 .
0 127
7 .
, .
1890 .
. . , ( ) . ,
.
,
, . . . , , ,
, , .

, . 288-
. ,
, ,
, .
.
, . , -

295

.
,
. , , ,
26 . .
1890 . . 62 000 000 . ,
1880 ., . . 1895 .
, 1897 .
.
1896 . Tabulated Machine, . 1911 . Computing-Tabulating-Recording (C-T-R). 1915 . C-T-R (Thomas Watson)
(18741956). 1924 .
International Business Machines, IBM.
1928 . 1890 . IBM 80 12
. 50
.
20, 21 24.
XX ,
XIX, , .
, : , ,
. , ,
. XIX
,
. , ,
, .
, - .

296


, 1930-. , , , , .
, (
,
1970-). , , ,
.
, 30-
, 524
288 ! , . , -
,
. , .
.
-,
(Conrad Zuse) (19101995), 1935 .
, .
, , .
35- , .
1937 . (George Stibitz) (19041995) Bell
Telephone Laboratories
1- , - (. .
). Complex Number Computer (1939).

(Howard Aiken) (19001973) -

297

,
. IBM,
Automated Sequence Controlled Calculator
(ASCC), I.
1943 . ,
, . . -
. II
. 13 000
. , , .
. , ,
.
, .
, 1947 .
II. (Grace Murray Hopper) (19061992), 1944 . ,
, 1 .
,
(John Ambrose Fleming) (1849
1945) (Lee de Forest) (18731961) . 1940-
,
, . , ,
, , - -.
,
. , , ,
. , , , .
1

. bug .
. . .

298

. , , , , .
. . , (
, ).
. -,
. -,
, .
. , , 1 , . .
. , , . .
1940-
, 1945 . . , , .
( 1943 .)

. ( ) (Alan Turing) (19121954), . , 1937 ., , , .
.
. ( ).

299

ENIAC (Electronic Numerical Integrator and


Computer, )
18 000 .

(J. Presper Eckert) (19191995) (John Mauchly)
(19071980). 1945 . (30 ) ENIAC , , . 1977 .
-
(John
Atanasoff) (19031995), , .
ENIAC
(John von Neumann) (19031957), ,
1930 . .
,
,

.
ENIAC EDVAC (Electronic Discrete
Variable Automatic Computer,
).
, 1946 . (Arthur Burks) (Herman Goldstine), , EDVAC ENIAC.
EDVAC ,
( ENIAC ).
,
, (-

300

ENIAC
). , . .

, ,
. , , .
. ,
. , 17
.
EDVAC , .
,
(mercury delay line memory), 5- .
, 1
( ). 1 024 . 50- ,

, . 1 .
40- . (. 1916). 11 (1938),
, . 1948 ., Bell
Telephone Laboratories, Bell System
Technical Journal , , ,
. (-

301

)
. 1949 .
, 1952 .
, . Bell Telephone Laboratories
,
, .
(Norbert
Wiener) (18941964), 18 ,
,
(1948). ( , )

.
-, - . , ,
, .
(1984) (William
Gibson), .
1948 . Eckert-Mauchly Computer ( Remington Rand) UNIVAC (Universal Automatic
Computer, ).
1952 .,
. 1952 . UNIVAC
CBS,
,
(Walter Croncite) .
1952 .
701 IBM.
.
, - , . 1947 . , .
Bell Telephone Laboratories
, ,

302

. , , . , , Bell Telephone Laboratories. ,


70- UNIX , .
Bell Telephone Laboratories 1 1925 .,
American Telephone & Telegraph
. Bell Telephone
Laboratories . , , , , .
1912 . Bell System , . . ,
. , , .
16 1947 ., Bell
Telephone Laboratories (John Bardeen) (1908
1991) (Walter Brattain) (19021987)
.
. (William
Shockley) (19101989). , ,
XX
.
.
, 29 1939 . :
,
,
.
. 1956 . , -

303

.
. , . , ,
.
, , ,
, .

.
, . , ,
.
( ) , ,
, ,
.
4 , .
, , . .
(dope), . . . .
n- (n
, . . ). p-
(p , . . ).

n- p-. npn-, (collector), (base)
(emitter).
npn-:

304


, . , .
-.

: , , .
, , .
. . 1954 .
Texas Instruments, .
, .
(Alexander Graham Bell)
, AT&T
. 1960 . , ( - ).

305

1956 . Bell Telephone Laboratories, - ( )


Shockley Semiconductor Laboratories.
.
, - 1 .
, , . . ,
.
1, ,
,
1. ,
.
, , .
.
. .

V


V

.
. .

306

, ,
, . ,
, ,
,
.
1956 .,
.
, , ,
, .
?
, . ,
,
.
, . -
, -
.
17 64 ,
,
, .

.
, , , . , , , .

RAM. , .
-, 1952 . (Geoffrey Dummer)
(. 1909):
, . , -,
, -

307

. , ,
, .


.
1958 . ,
(Jack Kilby) (.
1923) Texas Instruments, . , 1959 . (Robert
Noyce) (19271990). Shockley
Semiconductor Laboratories, 1957 .
Fairchild
Semiconductor.
, . , Texas Instruments
, Fairchild Semiconductor,
.
. (), ,
.
,
. , : , .
, , , . DIP
(dual inline package, ) 14, 16 40 .

308

16 .
, (
), 1 16 , .
1/10 ( 2,5 ).
60- .
, , , 1964 . Zenith. 1971 . Texas Instruments
, Pulsar
(,
).
.
1965 . (Gordon Moore), Fairchild Semiconductor, Intel,
, 1959 . . , . ,
. , .
,
2015 .
: (small-scale integration, SSI)
10 ; (medium-scale integration, MSI),
( ) 10100 ; (large-scale

309

integration, LSI), ( )
1005000 ;
(very-large-scale integration, VLSI),
( ) 5000
50000 ;
(super-large-scale integration, SLSI) 50000
100000 ;
(ultra-large-scale integration, ULSI), (
) 100000 .

70-
,
, . , (family) . 70- :
.
-
(transistor-transistor logic).
(. .
, )
The TTL Data Book for Design Engineers - Texas Instruments, 1973 .
7400 (
74), Texas Instruments .
7400
, . ,
,
, , .
7400 ( )
7400 -.
, -. (positive) -

310

, 1,
0. 14 ,
.
VCC

4B

4A

4Y

3B

3A

3Y

14

13

12

11

10

1A

1B

1Y

2A

2B

2Y

Gnd

( ); .
14, VCC, V, . C ,
; ,
.
Gnd 7- ground .

.
- 7400 4,75 5,25 , 5 5%.
4,75 , . 5,25 , . . 5- ,
. , ,
.
- 7400
. . ,

311

1 ( ), 0
( ). , 0 () 5 (V CC).
00,8 ,
2 5 . 0,8 2 .
0,2 , 3,4 . ,
0 1, (low) (high)
. , 0, 1. (negative) .
0,2 ( 0) 3,4 ( 1) 0 0,8 2 5 . . 1,4 .
0,6 .
, (propagation time), . . .
().
. ,
.
. - 7400
22 0,000000022 22 .
? ? , .
.
, ,
. . , : 30 , , .
, ?

312

. 17,
:
, , . (, 17) - , . :
,
.
. , , .
7402 4 -, 7404 6 , 7408 4 , 7432 4 , 7430 8- -:
VCC

Nc

Nc

Nc

14

13

12

11

10

Gnd

Nc no connection .
7474 D- , .
.

313

VCC

2Clr

2D

2Clk

2Pre

2Q

2Q

14

13

12

11

10

D
Clr

Clk

Clr

Clk
D

PRE

PRE

1Clr

1D

1Clk

1Pre

1Q

1Q

Gnd

14
, -.
.

314

,
. , 1 0.
0;
1.
,
, 7483 4-
, 74151
8 1 , 74154
4 16 , 74161
4- , 74175 D- .
, , , , 11, The TTL Data Book for Design Engineers.
,
.
,
17. , .
. RAM,
The TTL Data Book for Design
Engineers 1973 ., 256 1 . RAM 64 2 048!
, - , .
21.

315

, , . , , -
, . ,
,
.
, .
1 ( ).
17 ,
10 .
400 . , , , .

( -), CMOS
(complementary metal-oxide semiconductor). 70- - ,
CMOS Databook,
National Semiconductor.
- 4000.
4,75 5,25 .

3 18 . ! ,
, , , .
. , 4- 4008, 5 ,
750 . , : 250 10 190 15 . -,
24 . , -
- 25 .
- -.

316


(breadboard).

. ,
. . .
(wire-wrapping). :

.
. . ,
.

(printed circuit boards).
, . ,
. , -

317

, , .
. , . .
70- .

. 1971 . Texas Instruments, -
Intel, 1968 . Fairchild
Semiconductors .
Intel 1 024 ,
1970 .
,
Busicom, Intel
. Intel (Ted Hoff)
: ,
,
, . 4004 , . 4004 1971 .
2 300 ( , , 18 , 4 000 , . .
10 ).
,
4004.
.
-, 4004 4- , . .
4 . 4-
. 8-
17, 8 .

318

, 4 .
, 4- 8-, 70-
16- . , 8- 17 16-
,
16- . 80-
32- , .
-, 4004 (clock speed)
108 000 , . . 108 ().
, .
, . 1999 .
, ,
500 5 000
, 4004.
-, 4004 640
. , .
, 64 , 17. 1999 .
Intel
64 , ,
256 .

. 4-
32- , 4- .
- . , ,
.
. , ,
.
.
.

319

, , , ,
. . 4- 32- ,
32- .
. ,

, .
,
. , , ,
, , , ,
, . . .
, .
, , .
, .
.
, , , , , , . , , .
, .
70-.
4004, . 1972 .
Intel 8008 8-

320

200 16 (,
). 1974 . Intel
Motorola ,
8008. .

19

, . . ,
,
1971 . .
4004 Intel 2 300 .

10 000 000 .
. ,
,
,
. , ,
.
1974 .: Intel
8080,
6800 Motorola, 1950 . . , 1974 . :
4- TMS 1000 Texas
Instruments, , , 16- PACE National Semiconductor.

322


8080 6800.
8080 360
System/360 IBM,
. 8080
System/360, IBM

.
8- 8080 6 000 ,
2 64
. 6800 4 000 64 . 6800 1 , 1977 .
Motorola ,
1,5 2 .
8080 6800
(single-chip) , , . , , . ,

, ( ), ( ) , .
21.
.
-,
. ,
17. , , , . , ,
.
, .
8080, 6800 40 . :
5 , 1,5 3 .

323

, , .
8-
6 .

. 40 8080 :
A 10
GND
D4
D5
D6
D7
D3
D2
D1
D0
5
RESET
HOLD
INT
02
INTE
DBIN
WR
SYNC
+5

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

Intel
8080

40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21

A 11
A 14
A 13
A 12
A 15
A9
A8
A7
A6
A5
A4
A3
+12
A2
A1
A0
WAIT
READY
01
HLDA

. 8080
, . 20
5 , 11 -

324

5 , 28 12 . 2
. 1976 . Intel 8085, .
.
, , .
. , , . . ,
.
17 . 8080 ,
22 15. Intel
8224. 18 , .
. , . 8080 16 ( A0 A15), , 216 = 65 536
.
8080 8-, . . 8 .
D0 D7. 8 .
; .
10
. RESET, ,
. WR ,
(
W ).
,
D0 D7, . , 8080,
8228.

325

8080 , , ,
, .
, 8080 64 ,
.
8080 ,
0000h, 16 A0 A15. 8080, (instruction fetch).
17 ( )
3 .
8080 1, 2 3 .
, , - , . , . . , ,
- .
8080
2 , 500 ( 1 2 000 000
, 0,000000500 ).
17 4 .
8080 4 18 . ,
2 9 ( ).
, ,
,
.
17 12 . 8- 256 , 8- ( , 2- ). 8080 244 .

326

, , , 8080
17. , , 8080
.
17,
, . .
; .
,
8080 .
17 , .
3 . , 8- . . , .
,
:
LOD A,[aaaa]
STO [aaaa],A
(
),
aaaa 16- , 4 .
8- 8080 , 17. 8080 ,
. 8080 3Ah
32h (, 16- ), STA (Store Accumulator, )
LDA (Load Accumulator, ).

32

STA [aaaa],A

3A

LDA A,[aaaa]

327

8080 6 (registers), 8- . .
. , ; .
, . , ,
, .
6 8080 B, C, D, E, H L. : F G?,
: I, J K? , H
L . H
high, L low. 8- H L , 16- HL, H (high) , L
(low) . 16- , .

17? , , , .
. ,
, .
:
, .
63 8080 MOV (Move, ).

( ). MOV
7 ( ).
32 MOV.
, , - .

40

MOV B,B

50

MOV D,B

41

MOV B,C

51

MOV D,C

328

()

42

MOV B,D

52

MOV D,D

43

MOV B,E

53

MOV D,E

44

MOV B,H

54

MOV D,H

45

MOV B,L

55

MOV D,L

46

MOV B,[HL]

56

MOV D,[HL]

47

MOV B,A

57

MOV D,A

48

MOV C,B

58

MOV E,B

49

MOV C,C

59

MOV E,C

4A

MOV C,D

5A

MOV E,D

4B

MOV C,E

5B

MOV E,E

4C

MOV C,H

5C

MOV E,H

4D

MOV C,L

5D

MOV E,L

4E

MOV C,[HL]

5E

MOV E,[HL]

4F

MOV C,A

5F

MOV E,A

!
,
. , HL, :
MOV B,[HL]
,
HL. LDA, , .
HL?
. ,
.
, :
LDA A,[aaaa]
MOV B,[HL]
,
-.

329

(direct
addressing), (indexed addressing).
32 , , HL, , .

40

MOV B,B

50

MOV D,B

60

MOV H,B

70

MOV [HL],B

61

MOV H,C

71

MOV [HL],C

62

MOV H,D

72

MOV [HL],D

63

MOV H,E

73

MOV [HL],E

64

MOV H,H

74

MOV [HL],H

65

MOV H,L

75

MOV [HL],L

66

MOV H,[HL]

76

HLT

67

MOV H,A

77

MOV [HL],A

68

MOV L,B

78

MOV A,B

69

MOV L,C

79

MOV A,C

6A

MOV L,D

7A

MOV A,D

6B

MOV L,E

7B

MOV A,E

6C

MOV L,H

7C

MOV A,H

6D

MOV L,L

7D

MOV A,L

6E

MOV L,[HL]

7E

MOV A,[HL]

6F

MOV L,A

7F

MOV A,A

, :
MOV A,A
, :
MOV [HL],[HL]
. , , HLT (Halt, ).
MOV ,
:
01

330

,
-.
.
000 = B
001 = C
010 = D
011 = E
100 = L
101 = L
110 = HL
111 =
, :
MOV L,E
:
01101011
6Bh. , .
, - 8080 8 1,
3 8,
.
16-
B C (BC) D E (DE).
, , .

02

STAX [BC],A

0A

LDAX A,[BC]

12

STAX [DE],A

1A

LDAX A,[DE]

MOV MVI (Move Immediate, ). 2 : .


,
HL.

331

06

MVI B,xx

0E

MVI C,xx

16

MVI D,xx

1E

MVI E,xx

26

MVI H,xx

2E

MVI L,xx

36

MVI [HL],xx

3E

MVI A,xx

,
MOV E,37h
E 37h.
(immediate addressing).
, , 17, 32 . (ADD), (ADC), (SUB) (SBB).
;
.

80

ADD A,B

90

SUB A,B

81

ADD A,C

91

SUB A,C

82

ADD A,D

92

SUB A,D

83

ADD A,E

93

SUB A,E

84

ADD A,H

94

SUB A,H

85

ADD A,L

95

SUB A,L

86

ADD A,[HL]

96

SUB A,[HL]

87

ADD A,A

97

SUB A,A

88

ADC A,B

98

SBB A,B

89

ADC A,C

99

SBB A,C

8A

ADC A,D

9A

SBB A,D

332

()

8B

ADC A,E

9B

SBB A,E

8C

ADC A,H

9C

SBB A,H

8D

ADC A,L

9D

SBB A,L

8E

ADC A,[HL]

9E

SBB A,[HL]

8F

ADC A,A

9F

SBB A,A

, 35h, B
22h. :
SUB A,B
13h.
35h, H 10h,
L 7Ch, 107Ch
4Ah, :
ADD A,[HL]
(35h) , H L,
. . 4Ah. (7Fh) .
ADC SBB 8080
, 16,
24, 32 . . , 16-
BC DE,
:
MOV
ADD
MOV
MOV
ADC
MOV

A,C
A,E
C,A
A,B
A,D
B,A

: ADD
ADC . , , . , -

333

MOV . 8080 MOV .


8080.
17 .
8080 3 (Sign), (Parity)
(Auxiliary Carry).
8-
(Program Status Word, PSW). LDA, STA MOV . ADD, SUB, ADC SBB
.
1, 1 ( ).

1, 0.

1,
ADD ADC ,
SUB SBB ( 17 ).

1,
DAA ( ) .

1, , . . 1 . 0 ,
. ,
8080 .

37

STC

3F

CMC

ADD, ADC, SUB


SBB, 17 (
), 8080 -

334

,
. , - .

A0

AND A,B

B0

OR A,B

A1

AND A,C

B1

OR A,C

A2

AND A,D

B2

OR A,D

A3

AND A,E

B3

OR A,E

A4

AND A,H

B4

OR A,H

A5

AND A,L

B5

OR A,L

A6

AND A,[HL]

B6

OR A,[HL]

A7

AND A,A

B7

OR A,A

A8

XOR A,B

B8

CMP A,B

A9

XOR A,C

B9

CMP A,C

AA

XOR A,D

BA

CMP A,D

AB

XOR A,E

BB

CMP A,E

AC

XOR A,H

BC

CMP A,H

AD

XOR A,L

BD

CMP A,L

AE

XOR A,[HL]

BE

CMP A,[HL]

AF

XOR A,A

BF

CMP A,A

AND, OR XOR , . . . ,
:
MVI A,0Fh
MVI B,55h
AND A,B
05h. OR,
5Fh. , XOR 5Ah.
CMP (Compare, )
SUB . , CMP -

335

. ? !
, . :
MVI B,25h
CMP A,B
. 25h, ,
25h .

.

C6

ADI A,xx

E6

ANI A,xx

CE

ACI A,xx

EE

XRI A,xx

D6

SUI A,xx

F6

ORI A,xx

DE

SBI A,xx

FE

CPI A,xx

:
CPI A,25h
:

27

DAA

2F

CMA

CMA (Complement Accumulator, )


1 ,
. CMA 01100101, 10011010.
1 :
XRI A,FFh
DAA (Decimal Adjust Accumulator, ) 8080 .
.

336

DAA , BCD (binary-coded decimal,


). ,
BCD, 0000
1001, 0 9.
BCD 8
.
, BCD- 27h,
27 (
27h 39), BCD- 94h. :
MVI A,27h
MVI B,94h
ADD A,B
BBh, , ,
BCD,
1001. -
DAA. 21h , 27 + 94 = 121. BCD- DAA .
1 1. , 17
1 , FFh, . .
2 1. 8080 1 .

04

INR B

05

DCR B

0C

INR C

0D

DCR C

14

INR D

15

DCR D

1C

INR E

1D

DCR E

24

INR H

25

DCR H

2C

INR L

2D

DCR L

337
()

34

INR [HL]

35

DCR [HL]

3C

INR A

3D

DCR A

, .
8080
(rotate), 1
.

07

RLC

0F

RRC

17

RAL

1F

RAR

.
, A7h, 10100111
. RLC .
( ) .
01001111,
1. RRC .
10100111 11010011,
1.
RAL RAR . RAL ,
,
. ,
10100111 0, RAL
01001110, 1. RAR
1 01010011.
2, .

338

, , .
. RAM ,
,
. ,
.
(, . .) (sequential access).

, , .
. , ,
, - . ,
, , . ,
.
,
. , , . ,

,
.
. ,
. . ( ), .
(stack).
. (Last In
First Out, LIFO). ,
, . ,
, .
, , , , , , . (push), (pop).

339

, , , . -
,
,
.
, ,
. , ,
. () :
PUSH A
PUSH B
PUSH C
.
, - LIFO.
, . ,
:
POP C
POP B
POP A
: . POP, .
,
,
. , , ,
D E, :
PUSH D
PUSH E
:
POP E
POP D

340


, .
? ,
. 8080 16-
(Stack Pointer, SP).
8080 .
PUSH 16- , POP. PUSH C POP C
8 :

C5

PUSH BC

C1

POP BC

D5

PUSH DE

D1

POP DE

E5

PUSH HL

E1

POP HL

F5

PUSH PSW

F1

POP PSW

PUSH BC B C, POP BC
. 8- PSW,
, , . . . PSW,
.
, :
PUSH
PUSH
PUSH
PUSH

PSW
BC
DE
HL

:
POP
POP
POP
POP

HL
DE
BC
PSW

, , 8000h.

341

PUSH BC
.
1, 7FFFh.

B
, . . 7FFFh.

1,
7FFEh.

C
, . . 7FFEh.
POP BC ( , 7FFEh).
C ,
(7FFEh) .

1,
7FFFh.

B ,
(7FFFh) .

1,
8000h.
PUSH 2 . , (, - ) ,
, .
(stack overflow). POP
(stack underflow).
8080
64 , 0000h. PUSH 1, . . FFFFh, , ,
, , ,
0000h.
LXI
(Load Extended Immediate, -

342

), 16- , .

01

LXI BC,xxxx

11

LXI DE,xxxx

21

LXI HL,xxxx

31

LXI SP,xxxx

:
LXI BC,527Ah
:
MVI B,52h
MVI C,7Ah
.

SP, . . . , ,
:
0000h: LXI SP,0000h
1
:

03

INX BC

0B

DCX BC

13

INX DE

1B

DCX DE

23

INX HL

2B

DCX HL

33

INX SP

3B

DCX SP

16- ,
. 16 HL.

09

DAD HL,BC

19

DAD HL,DE

343
()

29

DAD HL,HL

39

DAD HL,SP

. , DAD HL,BC,
:
MOV
ADD
MOV
MOV
ADC
MOV

A,L
A,C
L,A
A,H
A,B
H,A

DAD
. .
. SHLD
LHLD HL
.

22

SHLD [aaaa],HL

HL

2A

LHLD HL,[aaaa]

HL

L [aaaa],
H [aaaa + 1].
(Program Counter, PC)
HL:

E9

PCHL PC,HL

HL PC

F9

SPHL SP,HL

HL SP

PCHL , , HL. SPHL


.
HL
, DE.

344

E3

XTHL HL,[SP]

HL

EB

XCNG HL,DE

HL DE

. 17,

, ,
. , .
. ,
.
,
,
, ,
.
17
.
8080 , . 8080
9 : 8 0
1 , , .
,
.
CALL (). - :
,
, . ? , !
, ,
.
. RET (Return, ). 2
.
, CALL RET, ,

345

, . .
( ).

.
. ,
. , ,
, .
. ,
, . ? , . ! , ? , . - CALL RET.
, ,
. . 17 . 8080
,
HL.
Multiply: PUSH PSW
PUSH BC

; ,
;

SUB H,H
SUB L,L

; 0000h HL ()

MOV A,B
CPI A,00h
JZ AllDone

;
; 0,

MVI B,00h

; 0 BC

MultLoop: DAD HL,BC


DEC A
JNZ MultLoop

;
;
;
;

HL BC
1
,
0

346

AllDone: POP BC ;
POP PSW
RET
;
Multiply,
,
.
PUSH. , , , .
H L.
MVI,
4, 2, SUB. HL
.
:
0. 0, 0,
. H L , JZ (, 0)
POP.
0 ,
. ,
. DAD () (HL). 1. 0, JNZ (, 0)
HL. ,
0 (,

8080 ).
25h 12h, :
MVI B,25h
MVI C,12h
CALL Multiply
CALL
, . . ,
CALL. , -

347

Multiply, . . . ,
RET,
. ,
CALL.
8080
, :

C9

RET

C3

JMP aaaa CD

CALL aaaa

C0

RNZ

C2

JNZ aaaa C4

CNZ aaaa

C8

RZ

CA

JZ aaaa

D0

RNC

D2

JNC aaaa D4

CC

CNC aaaa

D8

RC

DA

JC aaaa

CC aaaa

E0

RPO

E2

JPO aaaa E4

CPO aaaa

E8

RPE

EA

JPE aaaa EC

CPE aaaa

F0

RP

F2

JP aaaa

F4

CP aaaa

F8

RM

FA

JM aaaa

FC

CM aaaa

DC

CZ aaaa

, , , .
, .
.
(peripheral) , . . , ?
, . ,
, . -

348

. -
(memory-mapped input/output). 8080 - 256 65 536 . - (input/output
ports). A0 A7.
8228
.

OUT. .
IN.

D3

OUT pp

DB

IN pp


. , , , , . (interrupts) ,
8080 INT.
8080 . ,
EI (Enable Interrupts, ),
DI (Disable
Interrupts, ).

F3

DI

FB

EI

,
INTE.
, INT. ,
, :

349

C7

RST 0

E7

RST 4

CF

RST 1

EF

RST 5

D7

RST 2

F7

RST 6

DF

RST 3

FF

RST 7

CALL ,
.
: RST 0 0000h, RST 1
0008h . . RST 7,
0038h. , . , RST 4. , 0020h (
21).
243 .
08h, 10h, 18h, 20h, 28h, 30h, 38h, CBh, D9h, DDh, EDh
FDh. .

00

NOP

NOP (No Operation, ) . ? ,


.
6800 Motorola , , 8080.
.

350
V SS
HALT
01
IRQ
VMA
NMI
BA
V CC
A0
A1
A2
A3
A4
A5
A6
A7
A8
A9
A 10
A 11

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

MC6800

40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21

RESET
TSC
02
DBE
R/W
D0
D1
D2
D3
D4
D5
D6
D7
A 15
A 14
A 13
A 12
V SS

VSS , VCC
5 . 8080, 6800 16
8 ,
, . IRQ (interrupt request). - 6800 . .
6800 16- ,
16- , 8- (
) 8- .
, , , . 8-
.
16- 6800
(index register), HL 8080.
, .

351

6800
8080, , . , , 6800 .

20

BRA

22

BHI

23

BLS

24

BCC

25

BCS

26

BNE

27

BEQ

28

BVC

29

BVS

2A

BPL

2B

BMI

2C

BGE

, 0

2D

BLT

, 0

2E

BGT

, 0

2F

BLE

, 0

6800 , 8080 . .
8080 6800 , , .

. : . ,
, . ,
, 24.

352

8080 6800
. LDA,
. 8080, ,
:
3Ah

LDA 8080

7Bh
34h


347Bh. LDA 6800 :
B6h

LDA 6800

7Bh
34h

7B34h.
(3Ah 8080 B6h 6800) ,
, . - , . 8080 ,
, . 6800 !
Intel
Motorola .
Intel ,
, Motorola
.
- ? - , : .

353

( ) ( , ,
17, !).
,
(Intel) (Motorola).
8080 6800?
, ,
. 8800, 1975 . Popular Electronics.

: ,
, ? , 16.
8080 8085 Z-80 Zilog Intel, -

354

(Federico
Faggin), 4004. Z-80
8080, .
1977 . Apple II Apple
Computer, (Steven Jobs) (Stephen Wozniak). 6800 6502
MOS Technology.
1978 . Intel 16- 8086 1 .
8080, . 8088, 8086, . , 8080.
8088 5150 IBM ( IBM PC), 1981 .
IBM . , IBM PC (
). 1982 . x86 186 286, 1985 .
32- 386, 1986 . 486. 1993 . IBM Pentium
Intel. , , 8086.
6800 16-
68000 Motorola, 1984 . Apple Macintosh.
( 68)
.
1996 . Macintosh PowerPC,
Motorola, IBM Apple. RISC (Reduced Instruction Set Computing,

355

), . RISC- , , ( PowerPC
32 ), , . RISC-
, .
PowerPC
68, PowerPC 68 . PowerPC, Apple Macintosh,
68. -

68 . , ,
, ,
PowerPC, .
. ?
, .

( 23).
, ( ).
, ,
(pipelining). ,
, . (cache),
,
. , , . , , .

356

,
( ).
21, , , . ,
.

20

ASCII

, , ,
. ,
, . . ,
,
. ,
, , ,
.
,
.
, , . , (alphanumeric) . (coded character set),
(character code).
:
? .
,
. , , , ,

358


. . , , ,
,
.
, . ,
, , , , .
,
. :
.
:
.
- ? , . ,
, , . , .
.
, : ,
, , ,
. , .
, 26 .
, .
, , . , , :
,
. , , , . ,
.

. 6 . ,

ASCII

359

escape-, ,
. , ,
. .
,

.
,
27 .
, . ,
, .
. 17 ( ). (string).

.
, 2 7
10 111? , , .
,
5- , 1874 . (Emile Baudot). 1877 . (Donald Murray), 1931 .
CCITT (Comit Consultatif International T l graphique et
T l phonique), (International Telecommunication
Union, ITU), .
2 (International Telegraph Alphabet No. 2, ITA-2), - , .
XX .
.

360

, 30 . .
, . , . , , , .
5-,
32 , 00h
1Fh. .
-

00

10

01

11

02

12

03

13

04

14

05

15

06

16

07

17

08

18

09

19

0A

1A

0B

1B

0C

1C

0D

1D

0E

1E

0F

1F

00h . 26
, 5 .

ASCII

361

04h , . . . 02h 08h (Carriage


Return) (Line Feed). . , ,
, (
) -, ,
( ), -,
,
( ). .
?
- 1Bh .
, ,
, 1Fh . .
-

00

10
11

01

02

12

03

13

04

14

05

15

06

16

07

17

08

18

09

19

0A

1A

0B

&

1B

0C

1C

0D

1D

0E

1E

0F

1F

362

ITU 05h, 0Bh 16h . ,


.
, . . , .
? .
,
. :
I SPENT $25 TODAY.
( 25 ) :
0C 04 14 0D 10 06 01 04 1B 16 19 01 1F 04 01 03 12 18 15
1B 07 02 08
-: 1Bh ,
1Fh 1Bh . .
,
, :
I SPENT $25 TODAY.
8 03,5 $25 TODAY.
? ,
.

-. , , , , , .
,
, . ,
52
10 0 9. 62. , 64 , . . 6-
. ,
128 , , 8
.

ASCII

363

: ,
, 7- .
? .

,

, .
.

.
.
.
, , . , :
. .
, , .
(American Standard Code for Information
Interchange, ASCII). ASCII 1967 .

.
( ) ASCII
.
ASCII 7- . 0000000 1111111 00h 7Fh. , . - 32 , , 32- ,
.
- ASCII

- ASCII

20

30

21

31

22

"

32

364

()

- ASCII

- ASCII

23

33

24

34

25

35

26

&

36

27

37

28

38

29

39

2A

3A

2B

3B

2C

3C

<

2D

3D

2E

3E

>

2F

3F

20h .
32
,
, , .
- ASCII

- ASCII

40

50

41

51

42

52

43

53

44

54

45

55

46

56

47

57

48

58

49

59

4A

5A

ASCII

365
()

4B

5B

4C

5C

4D

5D

4E

5E

4F

5F

32
.
- ASCII

- ASCII

60

70

61

71

62

72

63

73

64

74

65

75

66

76

67

77

68

78

69

79

6A

7A

6B

7B

6C

7C

6D

7D

6E

7E

6F

: , 7Fh,
. , ,
95 . ASCII
7-, 128 , ,
33.
.
:
Hello, you!

366
ASCII :

48 65 6C 6C 6F 2C 20 79 6F 75 21
, (2Ch),
(20h) (1h).
:
I am 12 years old.
ASCII:
49 20 61 6D 20 31 32 20 79 65 61 72 73 20 6F 6C 64 2E
: 12 31h
32h, . . ASCII- 1 2. 12 , 01h 02h, BCD- 12h, 0Ch. ASCII
- .
ASCII 20h. ,
. ,
, 1 .
8080 , HL;
:
Capitalize: MOV A,C
; C =
CPI A,00h ; 0
JZ AllDone ; = 0,
MOV A,[HL] ;
CPI A,61h ; , "a"?
JC SkipIt ; ,
CPI A,7Bh ; , "z"?
JNC SkipIt ; ,
SBI A,20h

; , ,
; 20h
MOV [HL],A ;

ASCII

367

SkipIt:

INX HL
;
DCR C
; 1
JMP Capitalize
;

AllDone:

RET

, 20h
, :
ANI A,DFh
ANI (AND Immediate) DFh
11011111. , , . , ,
0.
20h, . . .
95
, . . , . ASCII 33 ,
,
.
, , - . ASCII , .
-

00

NUL

Null

01

SOH

Start of
Heading

02

STX

Start of Text

03

ETX

End of Text

04

EOT

End of

Transmission

05

ENQ

Enquire
(Inquire)

06

ACK

Acknowledge

368

()

07

BEL

Bell

08

BS

Backspace

09

HT

Horizontal
Tabulation

0A

LF

Line Feed

0B

VT

Vertical
Tabulation

0C

FF

Form Feed

0D

CR

Carriage
Return

0E

SO

Shift Out

0F

SI

Shift In

10

DLE

Data Link
Escape

11

DC1

Device
Control 1

12

DC2

Device
Control 2

13

DC3

Device
Control 3

14

DC4

Device
Control 4

15

NAK

Negative

Acknowledge

16

SYN

Synchronous
Idle

17

ETB

End of

Transmission
Block

18

CAN

Cancel

19

EM

End of
Medium

ASCII

369
()

1A

SUB

Substitute
Character

1B

ESC

Escape

1C

FS

File Separator or Information


Separator 4

1D

GS

Group Sepa-
rator or In-
formation
3
Separator 3

1E

RS

Record Sepa-
rator or In-
formation
2
Separator 2

1F

US

Unit Separa-
tor or Infor-
mation
1
Separator 1

7F

DEL

Delete

,
, . ( ),
,
ASCII-. :
, , . , .

41 09 42 09 43 09
09h ,
.
, 8. :
A

370

,
.
12h,
.
08h (BS) . , ( )
65h 08h 60h.

, .
CR
, LF
.
. , ,
.
ASCII , IBM .
System/360 IBM 8-
EBCDIC (Extended BCD Interchange Code, BCD). 6- BCDIC,
IBM 50 .
ABCDEFGHIJKLMNOPQRSTUVWXYZ
0123456789

00000000000000000000000000000000000000000000000000000000000000000000000000000000
1 2 3 4 5 6 7 8 9 10 11 12 13 14 1516 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 3637 38 39 40 41 42 43 44 45 46 47 48 49 5051 52 53 54 5556 5758 59 60 61 62 63 64 6566 67 68 69 70 71 72 73 7475 7677 78 79 80

11111111111111111111111111111111111111111111111111111111111111111111111111111111
22222222222222222222222222222222222222222222222222222222222222222222222222222222
33333333333333333333333333333333333333333333333333333333333333333333333333333333
44444444444444444444444444444444444444444444444444444444444444444444444444444444
55555555555555555555555555555555555555555555555555555555555555555555555555555555
66666666666666666666666666666666666666666666666666666666666666666666666666666666
77777777777777777777777777777777777777777777777777777777777777777777777777777777
88888888888888888888888888888888888888888888888888888888888888888888888888888888
99999999999999999999999999999999999999999999999999999999999999999999999999999999
1 2 3 4 5 6 7 8 9 10 11 12 13 14 1516 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 3637 38 39 40 41 42 43 44 45 46 47 48 49 5051 52 53 54 5556 5758 59 60 61 62 63 64 6566 67 68 69 70 71 72 73 7475 7677 78 79 80
IBM 8081

EBCDIC, ,
. .

ASCII

371


. .
10 0 9.
0- 11-,
12-. . 80
, 80 .
0- 9- (digital punches), 11 12
(zone punches).
,
0 9.
8- EBCDIC . BCD, . , ( )
. 19, BCD 4- 0 9.
0 9 , . .
1111, BCD- .

EBCDIC

F0

F1

F2

F3

F4

F5

F6

F7

F8

F9

1100 12, 1101


11, 1110
0. EBCDIC :

372
- -
- EBCDIC - EBCDIC

EBCDIC

C1

D1

C2

D2

E2

C3

D3

E3

C4

D4

E4

C5

D5

E5

C6

D6

E6

C7

D7

E7

C8

D8

E8

C9

D9

E9

: .
EBCDIC
.
, , . a i 12 0,
1000. j r
12 11 ( 1001). ,
s z 11 0 ( 1010).
- -
- EBCDIC - EBCDIC

EBCDIC

81

91

82

92

A2

83

93

A3

84

94

A4

85

95

A5

86

96

A6

87

97

A7

88

98

A8

89

99

A9

ASCII

373

, EBCDIC ,
.

12 (1 1 ).
, 7- ASCII
7 12 .
, , , .
8- EBCDIC . , 7- ASCII
. ASCII , , 6-, -. ,
, ASCII
8-. , 7-, 8- . , ASCII 7-, 8 .
:
,
, .
, ,
.
, 1 700 . The New Yorker
60 .
40 7 200
( ). The New York Times
6 . , ( ),
155 35 . ,
32 550 , 32 .
400 . 7 (,
8, ) -

374

3 000 . , 333 . , , ,
,
1 000 000 , 1 .
, .
300 .

400 .

540 .
1 .
1,3 .
,
2,25 .
2,5 .
3,9 .
7,7 .
20
. , 20 , 20
( , ).
, ASCII .
,
! , -.
ASCII , ? ,
? , , , .
- ,
, , ?
, 7-
, ?
ASCII , , ,
. ASCII , 10 (40h, 5Bh,
5Ch, 5Dh, 5Eh, 60h, 7Bh, 7Ch, 7Dh 7Eh)
. ,

ASCII

375

#
, $ . , ,
, .
8- , ASCII 256 . 00h 7Fh
, 80h FFh

. , ,
ASCII . , .
8-

9-

A-

E-

-0

-1

-2

-3

-4

-5

-6

-7

-8

-9

-A

-B

-C

-D

-E

-F

,
ASCII , , , . -

376

ASCII , . Shift-JIS (Japan Industrial Standard,


) 81h 9Fh
2- .
Shift-JIS 6 000 . , .
.
. :
, ASCII,
, . , .
,
, 1988 .
Unicode, ASCII. ASCII Unicode 7-, 16-. 2
Unicode . , Unicode 0000h FFFFh, 65 536.
,
, ,
.
Unicode .
128 0000h 007Fh
ASCII. ,
, ,
.
Unicode , , , . ASCII ,
.
, Unicode 1 = 1
. ASCII
1 , Unicode 2 . , .

21

, , ,
. , . ,
, ,
. , , , RAM . ,
, .
, , . , . . (bus), . .
, .
4 .
.
.

378

. :
.


.
.

,
, -
. , .

, .
S-100, 1975 . . 8080,
, ,
6800. S-100 5,3 10 (13,5 25,4 ),
100 ( S-100).
S-100 (motherboard). ( 12)
S-100. (expansion slots),
(expansion cards). S-100 ( 19),
.
S-100 8080,
16 , 8 8
. , 8080
.
,
, . , 8
, , . ,
(

379

). , , ,
.
8080 Intel 8214 .
,
. RST (),
0000h, 0008h, 0010h, 0018h, 0020h,
0028h, 0030h 0038h .
,
: .
,
, .
, , .

. (open architecture), . .
. , ,
. .
() IBM PC 1981 . IBM

, IBM.
,
, IBM
().
IBM PC
90% . IBM , -

380

, IBM PC . Apple Macintosh.


, , , ,
Macintosh 10% .
,
. .
IBM PC Intel 8088 1. 16-
, 8- , . . . 62 , IBM ,
ISA (Industry Standard Architecture, ). 20 , 8
, 6
3 (Direct Memory
Access, DMA). DMA
, .
S-100
. IBM PC ,
(
IBM), .
1984 . IBM PC AT 16-
Intel 80286, 16 . ISA ,
36 , 7 ( 4), 8 , 5 4 DMA.
,
, , .
, -

381

. , , , , .
1987 . IBM MCA (Micro Channel
Architecture, ). , IBM , . , MCA . , 1988 . 9 (IBM
) 32- EISA
(Extended Industry Standard Architecture,
).
IBM-
PCI (Peripheral Component Interconnect, ).
, ,
1970-. ,

8080 6800.
, , , ,
, .
16, RAM , , . , RAM:
RAM = 2
.
1970- 2102:

382
A7

A8

A9

CS DO DI

5B

16

15

14

13

11

10

12

2102
1

A6

A5 R/W A1

A2

A3

A4

A0

2102 (--), MOS (metal-oxide semiconductor),


. . , 8080
6800. ; ,
-, .
( A0 A9) , (DI) (DO) ,
, 1 024 .
2102 ,
. .
DO, 350 1 000

. R/W 1.

, R/W 0 170550 , 2102.

CS (Chip Select, ).
1, , . .

R/W.
, .
, 8- , ,
8-, 1- . 8
, R/W

CS. :

383

10

DI

RAM 1024 8

DO

R/W
CS

RAM 1024 8. 1 .

. , S100 64, . . 8 . 4 , . . 32 . , ,
(bank). 4
4 8 .
8080 6800 64 ,
16 . 16
4 , 4 , :
A 15 A 14 A 13 A 12 A 11 A 10 A 9 A 8 A 7 A 6 A 5 A 4 A 3 A 2 A 1 A 0

A0 A9 .
A10 A11 , . , A12 A15
, .
4
(64 ) 4-
:
0000h 0FFFh
1000h 1FFFh
2000h 2FFFh

F000h FFFFh
,
A000h AFFFh. , -

384

A000h A3FFh, A400h A7FFh,


A800h ABFFh, AC00h AFFFh.
4
. DIP-
( 2 12) , (Dual Inline Package, DIP).

4
(comparator):
V

A12

A13

A14

A15

,
1, .

385

A000h AFFFh,
, A13
A15. A12, A13, A14 A15
, ,
0. , - 1:
V

A12

A13

A14

A15

2 4,

CS
:

CS
CS
CS
CS

A10
A11

386

, A10 0, A11 1, .

16, , 8 4 1, .
, .
, , 2,2 ( 1), 0,4
( 0). , , 1, 0? ,
.
2102
(3-state tristate).
0, 1 , , ,
. 2102
, CS 1. ,
8 8
.
, .
, ,
.
.
.
2102 (static)
RAM, SRAM. (dynamic) DRAM.
SRAM 1 4 (
, , 16). DRAM 1 1
,
.
SRAM (, 2102)
. , . DRAM . , DRAM -

387

, . (refresh) .
DRAM , . 1975 .
Intel DRAM 16 384 . 3 . .
SIMM (Single
Inline Memory Module) DIMM (Dual Inline Memory Module)
DRAM.
, , , , .
- (CathodeRay Tube, CRT)
XX . , ,
. ,
, (video display adapter)
, .
,
, .
. ,
(scan line).

(horizontal retrace).
,
( ), . 60 .
(field rate) .

388

- (interlacing): , . (horizontal scan


rate), . . , 15 750 ,
60 , ,
262,5 . 2 , . .
525 .
, , , .
, . ,
,
.
- ( , , ). 60
(vertical sync pulse), .
400 (). , 5 15 750 .
0,5 () 2 ().
.
, . 525 , , . , (bandwidth).
. , . ,
, . 4,2 .
,

389

. . ,

,
(pixel). picture
element ( ).
.
, ,
. 4,2 ,
4,2 . . (
) , , 533 . 320,
, , .
525 .
,
. ,

, ,
200.
, (resolution) ,
, 320
200 , 320 200:

390

320 200 = 64 000. , ,


- .
, .
?
, , ,
. , ,
8 8 :

ASCII- 20h 7Fh (, 00h 1Fh ).


7- ASCII, 64 ,
. 64 .
320 200 25 40 8 8. ,
, .

391

RAM, ,
. .
, ?
! 1 192 !
. , , . , 25 40
, . . 1 000 . RAM 7- ASCII- .
7- 1 .

(character gerenator),
, . (; ReadOnly Memory; ROM) , ,
. RAM .

392

. 7 ASCII 64- ,
. , 128 ASCII 8 8, 7
( ASCII) 64 . -
! 8 , 3 . 7 -
(
). 3
8 8: 000 ,
111 . , , .
ASCII 41h
. , , 8 8 . 10- (
)
.

1000001 000

00110000

1000001 001

01111000

1000001 010

11001100

1000001 011

11001100

1000001 100

11111100

1000001 101

11001100

1000001 110

11001100

1000001 111

00000000

: .
,
, , -

393

, ,
. , , 8- .
.
, , (graphics).
, , . , .
320 200,
64 000 . 1 ,
64 000 , . . 8 000 , , , . ,
, , , ( 0) ( 1).
- , ,
, , , .
, , .
00h , FFh .
. , 256
320 200, 64 000 .
8- ,
, !
, 2 .
,
, , . -
3 ( 25).
192 000 .
,
, . ,
,

394


= 2

320 200 ,
. . , IBM PC, 25 80 .

IBM. 80 IBM . ? , ! . .

.
1987 . 640 480
PS/2 IBM Macintosh II Apple.
.
, 640 480 . 1889 (William Dickson) Kinetograph Kinetoscope. , . (aspect ratio).
1,33:1, 4:3. 60
. 1950-
, 4:3,
, .
,
, 4:3, . (640) (480). ,
, , 100

395


100 . , , .
640 480, , 800 600, 1024 768,
1280 960 1600 1200.
,
- : , , . .
, .
48 , .
, ,
,
. ,
ASCII, : . ,
41h Shift
61h, Shift . , , ASCII
. , , - (scan code). , - - ASCII, .
, , ,
16 . ,
4- ,
0000 1111.
:

396

Clk

4-

Q0 Q1 Q2 Q3

V
DI
S0

2 4
O0

O1

O2

O3

S1

S0

S1

I0

I1

4 1
DO

I2

I3

. 4-
16 . , , .
4-
2 4, 4 1.
, 1.
1. , - 1. ,
, 1
0110.

397

Clk

4-

Q0 Q1 Q2 Q3

V
DI

O0

O1

O2

S0
S
O3 1

S0

S1

I0

I1 4 1

2 4

DO
I2

I3

, 1.
, .
64 6- - 6 . 3 8
1 8, 8 8.
, 65 128 , - 7-.
8 16, 4 16
1 8 ( 3 8 1 16).
. , -

398

RAM, 1 . , : 1, , 0, .
.
. , 8080 , . , RST, , .
, , . , , , , : ,
. .
.
.
, .
- . ,
, , . ,
, ,
!

, 1878 .
(Oberlin Smith) (18401926), 1898 . (Valdemar Poulsen) (18691942).
, , .
,
. .
, -

399

. ,
,
, (head).
1928 . (Fritz Pfleumer) ,
,
(

). . .
.
1950 .
Remington Rand. (1,27 ) .
.
,
. IBM PC
.
. :
, ,
.
.
,
. .

.
1956 . IBM. RAMAC (Random Access Method
for Accounting and Control) 50 60 5 .
, .

400

(floppy), ,
(hard).
.
, .

. 8 . IBM PC 5 1/4
. 3,5 .
, .
, .
, . , . , .

(tracks),
(sectors).
, , 512 . IBM PC
5 1/4- ,
40 8 .
512 ,
163 840 , 160 . 3,5- IBM- , 80 ( 18
). 1 474 560
, 1 440 .
IBM PC XT (1983 .). 10 .
20-.
,
, . ,
SCSI (Small Computer System Interface), ESDI (Enhanced Small
Device Interface) IDE (Integrated Device Electronics).

401


.

, . , , ,
, ,
.
, :
. :
, .
, : .
,
.
.
,
. . , , .
.
, , , . , .
, . ().

22

- (, ), , ,
, .
, ,
,
. , .
- ,
--.
, .
, , ASCII-. , ,
. ,
. , .
, . - , , , , .

().
, -

404

. 8080 0000h. (, ).
? , .
16:

1
0
A 15 A 14 A 13 A 12 A 11 A 10 A 9

A8

A7

A6

A5

A4

A3

A2

A1

A0

1
1

0
D7 D6 D5 D4 D3 D2 D1 D0

,
.
, . ,
.
,
. . ,
. A0A15 16-
.
D0D7. , D0D7,
.
, .
.
! , . .
.
,
! , 21, -

405

1 , ASCII-
25 40 . , .
, . ,
,
4Bh. ? ASCII-, ,
.
4Bh, : 34h, . .
ASCII 4, 42h ASCII B.
8- , .
, ASCII . 8080 , (,
00h 0Fh ), ASCII-
:
NibbleToAscii: CPI A,0Ah
JC Number
ADD A,37h

Number:

RET
ADD A,30h

; ,
;
; A-F
; 41h-46h
; 0-9
; 30h-39h

RET

ASCII ,
NibbleToAscii :
ByteToAscii: PUSH PSW
RRC
RRC
RRC
RRC
CALL NibbleToAscii

;
;
;
;

; ASCII-

406
MOV B,A
POP PSW
AND A,0Fh
CALL NibbleToAscii
MOV A,C
RET

;
;
;
;
;
;


ASCII-
C


.
, .
, . ,
,
.
, . , -
. , , , , .
.
, , . ,
,
. RST . , RST 1.
, 0008h.
.
.
,
. ASCII- 20h, . OUT (Output, ) -
(, ,
) . -

407

EI ( ), HLT .
, , .
.
- .
,
(HLT) . IN (Input, ) ,
. - - ( ) RET, HLT, .
, , - ASCII, , Shift. ASCII- ,
, . .
Backspace (ASCII- 08h), , , .
, ,
ASCII- (20h).
:
,
Backspace,
, Enter. , Enter ( ASCII- 0Dh)
, . . - .

, ,
, : W, D R.

408

W,
(write) .
, , :
W 1020 35 4F 78 23 9B AC 67

35h, 4Fh . ., 1020h.
, ASCII- . , .
, D, (display) .
:
D 1030
11 ,
, 1030h.
40- , .
, R (run) :
R 1000
,
1000h.
HL PCHL,
HL , . . .

, .
. , .
, -
. ,
. 21 , ASCII, , .
(). .

409


(). ,
.
, DIP-.
8080, ,
0000h. ,
.

, , ,
(interactive). , .
,
(,
,
) .
,
. ,
.
, , S (store, ):
S 2080 2 15 3
,
2080h, 2, 15, 3
( ). S
L (load, ), :
L 2080 2 15 3
, , ,
. :
, . ,
. , . , ,
,
.

410

,
, , . ,
(file system).

, , . .
, ,
. : , , . , , , .

(operating
system), . , ,
, , , .
.
8-
CP/M (Control Program for Micros, ), (Gary
Kildall) (. 1942) 1970- 8080.
Digital Research.
CP/M . 8-
77 , 26 , 128 ( 256 256 ).
. , .
75 . CP/M , . -,
, .
, CP/M ,
. -, . , ,
.

.

411

75
8 ( 1 024 ). 243
, 0 242.
(2 048 )
(directory) , .
(directory entry) 32
. 2 048 , , , 64.
:

18

911

12

1314

( 0)

15

1631

, . CP/M
, 13 14 0.
CP/M .
(filename) 8 18. (file type)
, 911. . , TXT ,
. . , ASCII-, COM
8080, . . .
:
MYLETTER.TXT
CALC.COM
8.3 (-) 8 , 3 .
, . , , 4 14h, 15h,

412

07h 23h, 0, , 4
, . . 4 .
. 15 128- , .
16 . ,
16 384 .
16
, (extents). 12 0, - 1, 2, 3 . .
(text files),
ASCII-.
ASCII, ,
, . ,
, (binary). , , COM,
ASCII-, 8080.
, ( )
16- : 5A48h, 78BFh F510h.
6 :
48 5A BF 78 10 F5
, , , Intel: . Motorola :
5A 48 78 BF F5 10
ASCII- 16-
:
35 41 34 38 68 0D 0A 37 38 42 46 68 0D 0A 46 35 31 30 68
0D 0A
ASCII- , 16- .
(0Dh) (0Ah). ASCII-
, :
5A48h
78BFh
F510h

413

:
32 33 31 31 32 0D 0A 33 30 39 31 31 0D 0A 36 32 37 33 36
0D 0A
ASCII- , :
23112
30911
62736
, ,
, .
, CP/M
. , . , ,
(bootstrap loader). (128 ), . , ,
CP/M.
(booting).
, .
:
0000h:

0100h:

414

. - (Basic Input/Output System,


BIOS), (Basic Disk Operating System, BDOS)
(Console Command Processor,
CCP) 6 . (Transient Program Area, TPA) 58
64
.
, , . .
(prompt) , :
A>
, .
, ,
CP/M. , Enter.
CCP , - . , .
.
, , DIR , . .
. * ? . , :
DIR *.TXT
, :
DIR A???B.*
, 5 ,
.
ERA (erase, )
. , :
ERA MYLETTER.TXT
MYLETTER.TXT, :

415

ERA *.TXT
. , .
REN (rename,
), TYPE () . SAVE () 256- .
,
, .
.
, , , 0100h. ,
:
CALC
CALC.COM,
, 0100h,
, 0100h .
, ,
CP/M . 0100h.
CP/M
, , PIP
(Peripheral Interchange Program, ) ED . PIP ED,
, (utilities).
CP/M
(applications), , . , ,
, COM.
, CP/M
( ) , .
.

416

, CP/M,
- , ,
, ,
. .
CP/M
, . , , ,
, . , , , CP/M . . ,
, .
, . .
(Application Programming Interface, API).
API CP/M, , , :
CALL 5
, ASCII- ,
, :
MVI C,01h
CALL 5
ASCII-
. :
MVI C,02h
CALL 5
, ASCII- , .
, DE , , :

417

MVI C,16h
CALL 5
.
,
. .
CALL 5? CP/M
0005h JMP,
, .
CP/M. BDOS, ,
.
-.
.
CP/M
BDOS.
API . , CP/M
, , .
CP/M. :
, , ,
8080 , 8080,
, 8085 Intel Z-80 Zilog.
,
CP/M. API-
.
8080 CP/M , . QDOS,
(Tim Paterson) Seattle Computer Products
16- 8086 8088 Intel. QDOS 86-DOS Microsoft. MS-DOS PC-DOS IBM PC.

418

16- CP/M CP/M-86, MS-DOS .


MS-DOS
IBM- .
CP/M MS-DOS . , (File Allocation Table, FAT),
Microsoft 1977 .
MS-DOS (clusters),
512 16 384
. .

, FAT , .
MS-DOS 32 , 8.3, CP/M.
, , CP/M , MS-DOS
(extension). .
,
, .
MS-DOS
CP/M. , BIOS ,
IBM PC BIOS . MS-DOS
COMMAND.COM. MS-DOS .
COM 64 . EXE.
CALL 5 API MSDOS ,
(software
interrupt). ,
, . API- MS-DOS INT 21h.
,

. , -

419

1970-
1980-, ,
. , , , , API. , .
MS-DOS
,
.
IBM PC , . , IBM PC,
, , -

. , IBM PC
100%- .
MS-DOS 2.0 ( 1983 .) , ,
. ,
. , .
MS-DOS 2.0
,
MS-DOS
. , , . . ,
. . ,
. . (root), , ,
(subdirectories). , , .
MS-DOS 2.0 UNIX, -

420

1970- Bell Telephone Laboratories. (Ken Thompson) (.


1943) (Dennis Ritchie) (. 1941). UNIX Multics,
Bell Telephone Laboratories General
Electric.
UNIX
.
. UNIX
(portable), . .
.
UNIX Bell Telephone
Laboratories American Telephone & Telegraph,
, American Telephone & Telegraph . UNIX, ,
. C 1973 . ,
. 1983 . American Telephone &
Telegraph ,
UNIX.

UNIX. .
UNIX , . UNIX,
.
. UNIX ,
. UNIX .
UNIX , . (time

421

sharing) .
, . . . , .
, ,
(multitasking). , ,
, MS-DOS CP/M. , .

. , , .
(virtual memory): , , ,
.
UNIX (Free Software
Foundation, FSF) GNU, (Richard Stallman). GNU
, , : GNU UNIX (GNUs not UNIX), ,
, . GNU UNIX, , - . GNU UNIX,
Linux. (Linus Torvalds) , .
1980-, , Mac OS
Microsoft Windows,
. 25.

23


. - ,
8 1/4 %, , 2 3/4 1,5 . ,
.
2,6 ,
.
, . ,
, . . . , .
, , . ,

, . ,
() (

424

) 8-, 16- 32-


.

0 255

128 127

16

0 65 535

32 768 32 767

32

0 4 294 967 295

2 147 483 648


2 147 483 647

. , , , , . . . , 3/4 , 3 4. : 0,75. , , 75 100.


- . . ,
42 705,684 :
4 10 000 +
2 1000 +
7 100 +
0 10 +
51+
6 10 +
8 100 +
4 1000
,
:
4 10 000 +
2 1000 +
7 100 +
0 10 +
51+
6 0,1 +
8 0,01 +
4 0,001

425

:
4 104 +
2 103 +
7 102 +
0 101 +
5 100 +
6 101 +
8 102 +
4 103
- . 1/3.
1 3, :
0,3333333333333333333333333333333333333...

. , 1/3 , ,
.
, , 1/7:
0,142857142857142857142857142857142857142857...

, , .

. 2 2 2 = 0:
2~1.4142135623730950488016887242096980785696718...

, , . , .
p, :
3,14159265358979328462643383279502884...

, :

426
1+

1
n

n, .
:
2,718281828459045235360287471352662497757247...
. : . .
, .
.
, ,
, . . 0,
1 .
. , , . ,
32- 0 4 294 967 295. 4,5, - .
? . (D), 19.
D . (0, 1, 2, 3, 4, 5, 6, 7, 8
9) 4- :

0000

0001

0010

0011

0100

427
()

0101

0110

0111

1000

1001

D, , , , .
, D,
1 . D (packed D). D ,
(sign bit).
BCD ,
4 8 .
. ,
, 10 .
, , .
,
9 999 999,99 9 999 999,99.
5 . , 4 325 120,25 :
00010100 00110010 01010001 00100000 00100101
:
14h 32h 51h 20h 25h
: 1, . . . . , 0. 4 ;
.
99 999 999,99 99
999 999,99, 6 : 5 10
.

428


(fixed-point)1 , . .

. :
, - , .
, ,
,
,
. ,
. ,
. ? 150 000 000 000 ,
0,00000000005 . , 12 .
, , , ,
.
,
. :
150 000 000 000
:
1,5 1011
:
0,00000000005
:
5 1011
1 -

. ,
,
.
. . .

429

10 ( 1,5 8)
(
).
(significand) .
(exponent) , 10. 11; 11.
,
.
1 () 10. , ,
:
1,5 1011 = 15 1010 = 150 109 = 0,15 1012 = 0,015 1013
.
.
:
, .
:
5,8125 107 = 58 125 000
5,8125 107 = 0,00000058125

(floating point). . ,
. , .
- , .
10.
2. , 101,1101
:

430
14+
02+
11+
12+
14+
08+
1 16

2:
1 22 +
0 21 +
1 20 +
1 21 +
1 22 +
0 23 +
1 24

:
14+
02+
11+
1 0,5 +
1 0,25 +
0 0,125 +
1 0,0625
, 101,1101 5,8125.
1 10. :
1
10 (2 ).
101,1101 :
1,011101 22
:
1
1.

,

431

1985 . (Institute of Electrical and Electronics Engineers,


IEEE) (American National Standards Institute,
ANSI), IEEE (IEEE Standard for Binary Floating-Point Arithmetic).
18 ,
.
IEEE : (single precision), 4 ,
(double precision), 8 .
.
3 : 1 (0 1 ), 8 23
, :
1 (s)

8 (e)

23
(f)

32 , 4 .
1,
IEEE . 23- , ,
24 .
8- 0 255.
(biased), . . e , (bias). 127.
0 255 , . 1 254,
, s ( ), e () f ( ), :
(1)s 1.f 2127
(1)s. s 0, ( 0 +1),

432

s 1, ( 1 1 1).
1.f 23 , 1
( IEEE ).
2 e 127.
, IEEE
.
0, f 0, 0. 0 32 . 1, 0. ,
, ,
, 0 ( ).

= 255 f = 0 , s .

= 255, f 0, NaN ( Not a Number, ).


NaN .


,
, :
1,00000000000000000000000 2126
23 .
, , :
1,11111111111111111111111 2127

1,175494351 10-38 3,402823466 1038.
, .
, , , 10 3 . ,
, 10 (3FFh -

433

1023 ), , . :
210 103
24- 7 . ,
24
7 . ?

. , ,

. . .
, 1 224
6 . ,
16 777 216 16 777 217, ! , , ,
, 16 777 216,5. 32- 4800000h.
, ,
:
0 10010111 00000000000000000000000
:
1,00000000000000000000000 224
:
1,00000000000000000000001 224
16 777 218.
,
.
, ,
-

434

. ,
262 144,00
262 144,01 , , . , :
1.00000000000000000000000 218
.
, ,
. , 3,5 3,4999999.
,
.
,
, . 8 , :
1 (s)

11 (e)

52
(f)

1023 3FFh, :
(1)s 1.f 21023
0, NaN
, .
:
1.0000000000000000000000000000000000000000000000000000
2-1022
52 .
:
1.1111111111111111111111111111111111111111111111111111
21023
2,2250738585072014 10308 1,797693138623158
10308.
53 ( , 1) 16

435

. , , ,
, . , 140 737 488 355 328,00
140 737 488 355 328,01.
64- 420000000000000h, :
1.0000000000000000000000000000000000000000000000000000
247
,

.
, , , . , , ,
, .
, ;
. :
(1,1101 25) + (1,0010 22)
11101 10010, , , . 3 , 3 11101000 10010. 1,1111010 25. , . , ,
.
. .
, , . : , , . , :

436
sin(x) = x -

x3 x5 x7
+ - +...
3! 5! 7!

, (360
2p ), , . , 5! = 1 2 3 4 5.
,
,
, . ? .
. , . x . , x
0 p/2,
x. sin x
x 0 p/2 53 ,
.
? . ,
! - . -
, . .
,
.

,
.
! ,
16- , . , , .
, .

437

1954 . IBM 704 , . 36-


: 27 , 8
1 . ,
, .
.

1980 .,
Intel 8087. . (coprocessor) , . 8087 16- Intel 8086 8088.
8087 40 , 8086 8088.
. (ESC), ,

68 , , .
IEEE. 8087
.

. (, FSQRT
),
, .
.
, .
10 .
IBM PC 8088 40- 8087.
, .
, ,
8087 .

438

. , , .
, , , .
, .
,
.
, , 8087 , , , . , ,
, , .
Intel 287 286
387 386. 1989 .
,
, Intel 486DX
! , 1991 . Intel
, 486SX
487SX . 1993 .
Pentium
, , , . Motorola
68040 1990 . 68881 68882 68000 .
PowerPC.

, . ,
1950- .
.

24


. ,
, . ,
,
, ,
.
22 , . ,
(, ) .
, .
,
MOV, ADD, CALL, HLT, .
, . , 8080
46h ,
HL.
:

440

MOV B,[HL]
,
, . , . . ,
,
.
? 8080,
CP/M.
PROGRAM1.ASM
( ASM
, ).
CP/M ED.COM.
:
ORG 0100h
LXI DE,Text
MVI C,9
CALL 5
RET
Text: DB 'Hello!$'
END
.
ORG, , 8080. , 0100h.
, , CP/M .
LXI 16- DE.
Text, DB
(Data Byte, ). DB
, , (
) , .
MVI 9.
CP/M ,
, DE, -

441

$ ( , $, CP/M). CALL 5. ,
RET ( ). END .
, , 7 . , . .
. . CP/M ASM.COM, . :
ASM PROGRAM1.ASM
ASM PROGRAM1.ASM
PROGRAM1.COM, , (
, ,
). PROGRAM1
CP/M. Hello! .
PROGRAM1.COM 16 :
11 09 01 0E 09 CD 05 00 C9 48 65 6C 6C 6F 21 24
3 LXI, 2
MVI. 3 CALL 5, 1 RET.
7 ASCII- Hello, $.
-, , ASM.COM, ( )
(executable) , . ,
, . ,
, , -

442

( ).
, .
: Text 0109h.
, , 0100h.
, , - .
, -, , . ,
,
.
.
.
, - .
. ,
, : . ,
.
,
(portable). , , Intel 8080,
Motorola 6800.
. , , , , , .
23 ,
. , , ,
. ,

443

, :
A Sin(2 PI + B) / C
A, B C , PI 3,14159.
? , , .

, . , ,
, A, B
C. , , .
(high-level). (low-level), . , , ,
.
. ,
?
, , ,
: , , 1 000
! , ,
, .
, . . . . . 1993 . , 1950- 1 000 .
, (. .
) .

444

(compiler), . . , .
,
, ,
. , , ,
.
, ,
, . .

. , . . , . .
. , , ,
, . ,
.
.
,
. , ,
, , . ,
.
, .
, . , ,
. , . , ,
.

445

.

. . ,
2 (,
).
.
. , -
. , .
.

. ,

.


,
1952 . UNIVAC
(19061992), Remington Rand.
1944 ., , , Digital
Equipment.
, , (FORTRAN),
. ,

, .
, FORmula TRANslation ( ).
IBM 1950-
704
. -

446


,
.
. .
, , ,
(ALGOL). ,
ALGOrithmic Language ( ).
, ,
40 . .
58 195758 .
.
60. 68, ,
60, 1962, 1963 .
. ,
ALGOL.COM, CP/M , , MS-DOS. FIRST.ALG (
).
(keywords) begin end.
:
begin
print ('This is my fist ALGOL program!');
ende
:
ALGOL FIRST.ALG
:
Line 3: Unrecognized keyword 'ende'.

447

. ,
end. . , ende, .
.
FIRST.COM CP/M
FIRST.EXE MS-DOS. - , ,
. , :
FIRST
:
This is my fist ALGOL program!
.
: first ()
r. ,
.
, , , .
, , , print ,
. , . print ,
,
(built-in function). ( begin end)
. print
, ,
.
.

(variable).
, , .

448

- , ,
. a,
b c :
begin
real a, b, c;
a := 535.43;
b := 289.771;
c := a b;
print ( ', a, ' ', b, ' ', c);
end
real , . .
. , a, b c
, . . (
integer).
,
. , , .
. , .
IEEE
,
4 8
.
(assignment). (
).
, . ,
. . c a b.

449

,
ASCII EBCDIC. *.
(/), , , ASCII, .
print. . ,
, ASCII:
535.43 289.771 155152.08653
,
.
,
, . ,
read:
begin
real a, b, c;
print (' : ');
read (a);
print (' : ');
read (b);
c := a b;
print (' ', a, ' ', b, ' ', c);
end
read ASCII- .

(loop), . ,
, 3, 5, 7 9.
:

450

begin
real a, b;
for a := 3, 5, 7, 9 do
begin
b := a a a;
print ( ', a, ' ', b);
end
end
for a 3, ,
do. ( ), begin end.
(block).
a 5, 7 9.
for . 3 99:
begin
real a, b;
for a := 3 step 2 until 99 do
begin
b := a a a;
print (' ', a, ' ', b);
end
end
for a 3,
, do.
a , step,
. . 2. a,
5. a 2. , a 99.
. 60, ,
for .
, -

451

.
sqrt,
. , .
begin
real a, b;
print (' : ');
read (a);
if a < 0 then
print(', .');
else
begin
b := sqrt(a);
print ( ', a, ' ', b);
end
end
< .
,
print if.
0 , , print.

. .
(array). :
real array a[1:100];
a 100 ,
. a[1], a[2],
a[100]. (index).

1 100.
, .

452

begin
real array a[1:100];
integer i;
for i := 1 step 1 until 100 do
a[i] := sqrt(i);
for i := 1 step 1 until 100 do
print (' ', i, ' ', a[i]);
end
,
i.
.
.
real integer Boolean.
: true false. , ,
. ( 276196
. .)

.
, 1.
2. . 3,
5, 7, 11, 13, 17 . .
,
.
, (2), . .
, .
3. ,
. 4, ,
. 5 , , 5.
, .

453


, 10 000, , 2 10 000.
begin
Boolean array a[2:10000];
integer i, j;
for i := 2 step 1 until 10000 do
a[i] := true;
for i := 2 step 1 until 100 do
if a[i] then
for j := 2 step 1 until 10000 i do
a[j j] := false;
for i := 2 step 1 until 10000 do
if a[i] then
print (i);
end
true, . . , . i 2 100 ( 10 000).
i ( , a[i] true),
, i, false (
).
, true, . . .
, . ,
, , , (Donald Knuth)
. :
,
- - -.
100
, 100 . ,

454

, , .
, , .
, . - , ,
.
, , .

, , .
,
, (COBOL), 1950-
. .
COmmon Business
Oriented Language (, ). , , , ,
,
, , ( , , ).

(records) (reports). . ,
.
, ,
. 80- IBM.
,
2000 .

455

1960- IBM
System/360 PL/I (Programming Language I, 1). , PL/I ,

.
.
, , PL/I ,
, .
(BASIC, Beginners All-purpose Symbolic
Instruction Code,
) 1964 .
(John Kemeny) (Thomas Kurtz) .
, , . ,
, .
, .
. , SAVE , LIST , RUN . :
10 LET X = (7 + 8) / 3
20 PRINT X
30 END

.
.
, (interpreters).
, , . . .
, ,
, , -

456

.
1975 .,
(Bill Gates) (. 1955) (Paul Allen) (. 1953)
8800. Microsoft.
(Pascal)
. 1960-
(Niklaus Wirth). IBM PC , ,
Turbo Pascal Borland. , (Anders Hejlsberg) (. 1960),
1983 . (Integrated Development
Environment, IDE)
,
.
, Turbo Pascal .
,
. , 18, .
().
19691973 . (Dennis Ritchie) Bell Telephone Laboratories. , . : , BCPL (Basic CPL), CPL
(Combined Programming Language,
).
, 22 UNIX?
, ,
. 1973 . UNIX
(, ) ,
.
.
, -

457

, , :
{ }. .
:
i = i + 5;
:
i += 5;
1,
:
i++;
16- 32-
.
, . .
, (pointers), . .
. - .
, . . ,
. ,
. -
LISP (LIst Processing, ),
1950- (John MacCarthy)
.
, LISP, , APL (A Programming Language), 1950-
(Kenneth Iverson).
, , ,
- (object-oriented) . , () .

25

10 1945 . Life : ,
, United Auto Workers. , : (Vannevar Bush) (1890
1974) . 19271931 ., ,
,
. Life
, , .

,
The Atlantic Monthly. ,
,
. .
, ,
Memex.

460

, ,
.
, .
XX . .
.
.
.
, ,
, .
.

.

, ,
, . . , . , , , ,
, .
.
,
. 1950- 1960- ( 1970-)
:

. , . ( , , ).
. .
,
. .

461

ASCII- ( ), . . , ,
, , .
- ,
1970- ,
, , ,
. :
,
, ,
. CP/M MS-DOS.
UNIX.
, ASCII - : 1Bh (Escape). 1979 . ASCII.

-
- .
1Bh. Escape
,
,
. , :
1Bh 5Bh 32h 4Ah
. . Escape- [2J
. ,
. :
1Bh 5Bh 35h 3Bh 32h 39h 48h
. . Escape- [5;29H, 29-
5- .

462

, ASCII Escape-, ,
(dumb terminal).
, . 1970-
, .
,
, , , VisiCalc (1979) Apple II, (Dan Bricklin) (. 1951) (Bob
Frankston) (. 1949).
. VisiCalc
, . , , .
, VisiCalc
, .

. VisiCalc
Apple II,
.
.

,
. , IBM PC (1980-), . IBM ,
, , -
. PC

463

-,
.
IBM PC
, .
. ,
, 21, ASCII-.
8 .
. , . 1945 . ,
, .
1950-,
IBM . ,
. SAGE (Semi-Automatic Ground Environment, ) , .
,
SAGE.
,
. ,
.
. ,

. .
640 480 . , , 307 200.

464

,
.
307 200
38 400 .
,
, . ,
256 , . 00h , FFh ,
.
-
, , , , , ( , ). , , , .

3 . :

000

001

010

011

100

101

110

111

, , , . ,
.
2 , 5 (1
). 32
32 768 .
High Color.

465


3 , .
32, 256 , , 16 777 216 ( True Color). 640 480 3- 921 600 , . . .
(color depth). :
= 2
,

. 1 , 640 480
True Color.
800 600, 3 ;
High Color.
, . SAGE
(vector), , .
,
.
,
.
SAGE (light pens),
.
, , , . , , , , , , .

(Ivan Sutherland)

466

(. 1938). 1963 .
Sketchpad SAGE.

.
,
.

(Douglas Engelbart) (. 1925), 1950 .
.
1960- , ( ),
, (mouse). .
Xerox. 1970 .
- ( )
PARC (Palo-Alto Research Center) ,
.
PARC Alto
(19721973). : 16- , 3 ,
128 ( 512 )
!
, Alto
200 .
Alto
, , .
8 10 . 606 808 ( 489 648 ). 1 , . .
. 64
.
, , ,
. ,

467

. Alto . .
1970- Alto .
; . , -
(icons), . , ,
.
PARC Alto (Graphic User
Interface, GUI). , Alto
( 30 000 ), ,
.
1979 . PARC
Apple Computer. , 3 , 1983 .
Apple Lisa.
Macintosh.
Macintosh Motorola 68000, 64 , 128 ,
3,5- 400 , , 512 342 9 . 1 ;
22 .
Macintosh ,
. ,
1984 ., ,
, Mac OS.

468

CP/M
MS-DOS (API) . 22 , . , Mac OS, API. , .
, MS-DOS, API, . . API, .
.
, , . . API
, ( ). ,
, , ,
, (, .). , .
,
, API .
, . WYSIWYG (What You See Is What You Get, ,
).

, , ,
, . API
-

469

, , . ,

,
.
.
Macintosh IBM- . - Apple , .
Macintosh , .
PC
.
. IBM PC MSDOS .
PC : MS-DOS ( Macintosh
Apple II -
).
1985 .
PC: GEM Digital Research (
CP/M), VisiOn VisiCorp ( VisiCalc) Windows 1.0 Microsoft. , .
Windows 1990 ., 3.0. Windows ,
90% . Windows Mac OS ,
API .

.
: Macintosh
, Windows 1.0 .
Windows 1.0 , .

470


, .
, . 32 .

.
Macintosh , Windows
. 1972 . PARC
SmallTalk, - (object-oriented programming), .
(. . , - Set, For, If . .)
(. . ). , , , , , .
-
(object).
, . , (messages),
.
-
. , (, ), , .
. : , , . ,
, .
, -
-

471

, , .
- ++.
(Bjarne
Stroustrup) (. 1950) Bell Telephone Laboratories.
++ , ++ (
). .
, - , . , - , . ( )
- , Mac OS, Windows. API- .
, API. Mac OS
Windows .
,
, . , . (visual
programming),
,
.
22 , ASCII .
. : . , ,
,
. . .

472

, , , .
RTF (Rich Text Format),
Microsoft, , ,
.
PostScript
.
Adobe Systems (John Warnock) (. 1940).
. PostScript
.
.
, ,
, , , . .
, , .
,
.
(computer-aided drawing)
. (metafile).
,
.

, , , , , . . ,
.
- , (bitmap) .
, -

473

. ,
, , 1 .
, ,
, . , ,
, . .
,
, . , :
. , ,
, (, chargecoupled device, CCD) , .
. ,
,
(, ) -, -. , , .
, ,
.
-. , -
(video frame grabber) ,
.
, , .
. , , - ,
,
.

474

.
Macintosh, , Paint. MacPaint,
(
PICT,
, ). Windows BMP (
).
, - . , .
, 3 . , . . . ,
72 , . ,
72 , , 72 .
(Run-Length Encoding, RLE) . - , .

LZW, (Lempel, Ziv, Welch). , , GIF (Graphics Interchange Format,
), 1987 . CompuServe. LZW RLE ,
.
RLE LZW .
,
. , RLE LZW . -

475

, .
, ,
!

. , . ,
, . ,
, , .
, , , .

JPEG (Joint
Photography Experts Group,
). , JPEG , .
. . ,
.
,
.
(Optical Character
Recognition, OCR). ,
, ,
ASCII. OCR-
, .
, 100%-
OCR .
ASCII .

.
.

476

1983 .,
- (compact-disks, CD).
. -
Philips Sony 74
12 . ,
.
- - (pulse code modulation, PCM).
, PCM .
. , , .
.
.
, ,
.
, 1877 ., , .
. - ,
,
, .
, .
,
.
, ,
, . ,
. ,
, ,
- (; analog-to-digital
converter).
8, 12 16 -

477

. 12- , ,
000h FFFh, 4096
.
- . - ,
.
- (digital-toanalog converter). , .
, ,
(sampling rate). 1928 . (Harry Nyquist) Bell
Telephone Laboratories ,
, . ,

20 20 000 . - 44 100 ,
.
-, . .
, .
, . 1
10- .
, 0,1 . 1 , .
16- 96 , . -
16 .
, 1 44 100
2 .
, , 176

478

400 10 584 000 ( , , ,


1980-). - 74 783 216 000 .
. , .
, .
. . ,

.
- , . -, ,
CD-ROM-. 660 . , .
10

(multimedia),
, .
.
WAV- (
wave ).
, , -, Macintosh, Windows- 8- 22 050, 11 025 8000 .
( ) 1
8 000 , . . 480 000 .
, , ,

. , ,

479

,
.
. , , , , , . , .
,
.
- ASCII. , , . , ,
(). , .
,
, .
, . . ASCII, . - , , .
, , , , , , .
ASCII
. .

, 175 ,
47 . MIDI
(Musical Instrument Digital Interface,
). MIDI 1980- .

480

MIDI . , .

MIDI .
1 3 .
, .
MIDI- MIDI . , MIDI- , MIDI- . MIDI- WAV . WAV- , MIDI- .
MIDI- , .
.

, . 24 , 30 , 25 .
, .
, . : 640 480 24- 921 600 .
30 27 648 000
! 1 658 880 000 , 199 065 600 000, . . 200 .
, , , , .
MPEG
(Motion Pictures Expert Group, ). ,
.

481

MPEG .
, HDTV DVD (Digital Video Disks) MPEG-2.
DVD -,

. DVD- 16 - 25 . MPEG2 50 ,
4 , . . .
,
DVD-ROM-.

? , , , CD-ROM DVD-ROM : , , , . , ,
Memex .
CD-ROM- DVD-ROM . , . , .
, . .
.
, , , ,
0 1. (/; modem). ,
,
( , 8 , ).
: 0 , 1

482

.
(- -),
10 . 300
(30 ) ; 100 .

(Bulletin Board System, BBS),

. , , CompuServe. ,

ASCII-.
. . TCP/IP (Transmission Control Protocol/Internet Protocol).
TCP/IP
(packets), ( , ,
) , .
World Wide Web (WWW), HTTP (Hypertext Transfer Protocol, ). , Web-,
(Hypertext Markup Language, HTML).
,
(
). HTML-
Web-, .
HTML RTF, : ASCII- , . HTML-
GIF, JPEG PNG (Portable Network
Graphics). , HTML

483

, ,
19 24: .
, Web-
.
- ( Web-),
- ( ) (,
, )
CGI (Common Gateway Interface,
).
-,
JavaScript
HTML-. Web- JavaScript .
-
, ? -, ,
,
. Macintosh, PowerPC API Mac OS. PC-
Pentium API Windows.
, .
, .
.
- , Sun
Microsystems Java.
JavaScript Java
- , ++.
, 24 . Java . Java , , Java (Java Byte codes).
, , Java (Java Virtual Machine, JVM).
, ,

484

. , Java-
.
,

, .
.
-,
, .
, , .


1987 .
1996 . 1999 .
Microsoft Word. :
(Sheryl Canter), (Jan Eastlund),
(Peter Goldeman), (Lynn
Magalska) (Deirdre Sinnott)
, ;

(Claudette Moore) Moore


Literary Agency Microsoft Press, ;

Web-, Bibliofind (www.bibliofind.com)


Advanced Book Exchange (www.abebooks.com), , , (www.nypl.org);

, ;

, 1982 1999 ., , ;


Web- www.charlespetzold.com/code.

American Telephone & Telegraph 302, 304, 420 . Bell Telephone Laboratories
API .

Apple,
Apple II 354, 462, 469
Apple Lisa 467
Macintosh 354355, 467,
469, 470, 474
ASCII 363370, 373376, 390392,
395, 407, 479, 482

449, 461
462
405406

EBCDIC 370373
Eckert-Mauchly Computer 301
EDVAC, 299300
ENIAC, 299300
escape- 22

B
BBC 6
BCD 336, 371, 426427
427
Bell Systems Technical Journal, 300
Bell Telephone Laboratories 301
302, 420, 456, 471, 477 .
American Telephone &
Telegraph
Busicom 317

C
CD-ROM- 478, 481
. -
CPU .
CRT . -

D
Digital Equipment 445
Digital Research 410
DRAM .
DVD-ROM- 481

F
Fairchild Semiconductor

307

G
GNU, 421
GUI .

I
IBM 215216, 295, 301, 322, 354,
399, 419, 462463

455, 469
379381
370373, 394, 454
IEEE 431
Intel 317, 319320, 352353, 354,
437

J
Java, 483484
JavaScript, 483

K
Keuffel & Esser

290

L
LIFO 338
Linux, 421

M
Mark I/II,
Memex 459460, 481

297


Microsoft 456
MOS .
Motorola 320, 352353, 354355,
438
MS-DOS, 417419, 461, 468, 469
Multics, 420

UNIX

302, 419421, 456

V
VisiCalc

462

W
WYSIWYG

468

N
National Semiconductor 321
npn- 303304

Xerox

OCR .

P
Pentium, 354, 438
PL/I, 455
PostScript 472
PowerPC, 354
355, 438

R
RAM . ;

Remington Rand 301, 399, 445


RISC, 354355
ROM .

S
shift- 2122
Shockley Semiconductor Laboratories 307
SRAM .
Sun Microsystems 483

T
Tabulating Machine 295
Texas Instruments 307, 308, 317,
321
TTL .
TTL Data Book for Design
Engineers 309315

U
301, 445

466

Z
Zenith

Unicode 376
UNIVAC,

487

308

249250
238

329
331
329
23, 56, 33,
78 .
3537, 4749
1014

358,
362
- 91, 9597
457
251, 256257, 282,
326, 350
, 446453, 457
56, 288, 446
456
. -

353, 378, 456


-
56
30
117, 292
281
282

488
5657
284
99
- 282, 334

RISC 354355
300, 457
287, 457
102, 103
299

297
303
- 414
292293,
456
215216
262, 352
263, 352
16
302303
, 455456
477
304, 477
299
76, 78, 120, 300
182, 427
165
122
154, 263264
165
154
450
359
, 359362, 370
1517, 19
4, 1522, 33, 78,
295, 358359
97
302303
462
101109, 150151,
300

100, 116117, 150


148149
459, 481, 482
117, 291293

167, 297298,
302, 305
295
122123, 281,
322
- 348
472
274, 344347
188, 207, 212, 253
387
393
.
471
301
456
421
354
30
311
447
127
270
123, 281, 322
127
311
298, 318

456

391392
324
189
189
301
243
482
299


399
467, 469
290

45
45
306
282
209
477
141, 149, 236238
354, 467
. . 192
394
386387
400
387395, 405406, 419,
462, 463
102, 103,
121

1 173, 177
2 181182
9 170
10 180181

291
291
400

413
3941
169
379380
199, 231233
.
278
264
182
429
186187

489

472
29
411
173
138, 176, 187, 261
234
451
406
53, 216, 374,
376
307
317, 377, 391392
471
416417, 468469,
471, 483
7879, 8182
300301
192193
/ 97, 107, 452

225, 290291
295
411, 419
- 387,
461, 464
455
301
301
307
410
241242
244
395398, 406408, 466
418
446
315
453
, 454
282
258259, 325326

490
357
303
, 298
407408
286
101102,
103, 120
- 49, 476478
444, 445
355
414
31
290
455
( ) 99
355

100, 290
399
86, 281, 291292, 429,
435
97, 99117
194
119151
132135
- 145147
297298, 305
154160
135137
- 142145
309310, 312
314
230, 234, 236237
305306
128, 207
158159
159
190193, 200, 202
159
7981
398401
399400

400
400
400401

316
457
429
3

420, 459, 463
451
RAM 239, 314 . ;
241
378
292, 293
282, 287, 406
242243
244
359
467
472
285
437
281282, 317,
321356
6800 321323, 349351, 354
8080 321349, 354
Pentium 354, 438
PowerPC 354355, 438
377378, 380, 400401
442
322
307317
283, 326, 439
421
481482
316
382
150151


9, 15, 4547, 50,
117, 291 .

299
478
308, 317
308, 355, 387
8385
359

357 .
ASCII
81
477
311312
30, 44, 49
127,
133134

315
311, 386
428
299, 300, 463
25
290
307, 312, 317
100

406408
190
37, 39
- 457, 470
16, 47
30
30, 43
101
.

318, 322
413
377378, 380, 400401
447453

491
448
401, 410,
467470
CP/M 410417, 461, 468
Mac OS 421, 467
MS-DOS 417419, 461, 468, 469
Multics 420
UNIX 419421
Windows 421, 469
421
77, 80
463
379
290
173
311
206

229247, 267269, 281,


300, 306, 447448 .

1- 199
386387
400401
300
241
401
244
300
238239, 338
246247
, 456
290
417
398
2122
447448
154, 169
167
189
347

492
243
316317
389, 463465
429
436438
378
344345
161162
206
388
303
160161
- 348
429
338
391392
408
409
215
348349, 378379,
418
414
415
359, 360, 363364
29, 39, 43
282,
379, 380, 403
282, 343,
350
238239,
338
105
482
25
.
380
399

387388
389, 393395

182
154

90, 475
418
327, 340, 350
50, 124, 207, 244
129
452
420, 456

474475, 480
, 456457
++ 471
30
99, 105
443
188, 199, 253,
270 .
8283
5457
5657
6267, 7071,
217219
6976, 216217, 429
183
111
181183
221
5360, 7071,
216217, 424
6176
169172
221225
221225
428429
56, 60
6869, 7071
219227
380
9094, 473
333
378


398
2930, 4344
437
IEEE 431
386
338342
341
340, 343, 350
296
471
359
153167, 174176, 250
207212
289

194
418
.

294
369
76
318
304
3537, 4652, 117, 123,
295 .
359362
81, 8586
243
216
411
30
420
421
472473
, 431
167, 303306, 322,
355, 382 . ;

192
312314

493
231
193

204207, 212
213
198199, 204,
207, 230
291, 435436
309315, 382, 386 .
298, 318, 319
298

32
457
340, 343, 350
472
260, 324
276277
192

/ 281, 347
347
415

410, 411
ASCII 412
412
410
419
453
428
333
279
297
476
297
, 445446, 455
462
.

494

456
293295
297, 445
317

281
189, 449
270
337
281
296

189

92, 333

477

120, 123,
151, 300301
377
302303, 305
- 8995
81, 311

293
293

8283
32, 394, 476
296297
299
243
192
4647, 5052,
186187, 399
123, 124
246247
2426, 2730, 41
303
466
452

53, 216, 374, 376


34
282, 287, 406

443457
443

(Charles Petzold)
20 .
15 .

1970-,

Z-80
. 1985 . PC Magazine, 2000 .
MSDN Magazine. 1987
2000 . Microsoft Systems Journal.
, 1986 .
,
Windows. 1988 .
Programming Windows,
. . 1994 . Windows, Windows Magazine Microsoft Corporation, Microsoft Windows.
,
( , -), . -.

. .
. .
. .
. .

-
Adobe PageMaker 6.0

. .

066422 19.03.99 .
21.06.2001 . 4 000 .
84108/32. . . . 16

""
107005, , . . , 46