Title: ?????????????????????? (Computer Architecture)
1?????????????????????? (Computer Architecture)
2????? 4????????? (Instruction Sets)
3????????? (Instruction Sets)
- ???????????????????????????????????????????????
ALU - ?????????? ? ?????????????????? ALU
?????????????????????????????? (Machine
Instructions Sets) - ??????????????????????????????????????????????????
?????????????????? ???????? - ??????????????????????????????????????????????????
??????????????????????????????? - ??????????????????????????????????????????????????
???????????? - ??????????????????????????????????????????????????
?????????????? ?????????????????????
?????????????? ALU ???????????????????????????????
????
4?????????????????????????
- ????????? (Instruction Sets) ?????????????????????
??????????????????????????????????????????????????
???????????? ???????????????????? ?????????????
(machine instructions) ???? ?????????????????
(computer instructions) ????? ????????????????????
?????????????????????????????? ????
?????????????????? ???????????????????????????????
?????????????????????????????? ???????????????????
??????????? ??????????????????????????????????????
????????????????????????
5?????????????????????????
- ??????????????????????????????????????????????
- ???????????????????????????????????????
??????????????????? ???????????????????
????????????????????????? - ??????????????????????????????????????????????????
???????????????????????????? ???? ???? C Pascal
???? Ada ??????? - ?????????????????????????????????????? (compile)
??????????????????????????????????????????????????
??????????????? - ?????????????????????????????????????????????????
- ??????????????????????????????????????????????????
???????????????????????????????????
6???????????
- ??????????????????????????????????????????????????
???????????????????????????????????????????????? - ????????????????????????????? 2
???????????????????????????????????????????????
(fetches) ????????????????????? 1 ??????
???????????????????????? (execute) ?????????????
7???????????
??????????????????????
8???????????
- Instruction Address Calculation (IAC)
- Instruction Fetch (IF)
- Instruction Operation Decoding (IOD)
- Operand Address Calculation (OAC)
- Operation Fetch (OF)
- Data Operation (DO)
- Operand Store (OS)
9???????????????????????
- Operation code ????????????????????????? (????
ADD, I/O) ??????????????????????????????????
???????? operation code ???? opcode - Source operand reference ???????????????????????
?????????????????????????????????? - Result operand reference ???????????????????????
??????? - Next instruction reference ?????????????????????
??????????????????????????????????????????????????
????????????
10????????????
??????????????????????????????????????????????????
???????????????????????
- Data processing ???????????????????????????
- Data storage ???????????????????????
- Data movement ??????????????????/????????
- Control ?????????????????????????????????????
11?????????????
- ??????????????????????????????????????????????????
??????????????? - ??????????????????????????????????????????
- ??????????????????????????????????????????????????
?????? - ??????????????????????????????????????????????????
???? ?????????????????????
12?????????????
One-address
Two-address
13?????????????
Three-address
Zero-address
14??????????????????
?????????????????????????
- Operation repertoire ???????????????????????????
???? ????????????????????????????????????????? - Data type ??????????????????????????????????????
??????? - Instruction format ???????????????? (???????)
????????????? ???????????? ??????? ? - Register ???????????????????????????????????????
??????????????? - Addressing ?????????????????????????????????????
??
15????????????????
??????????????????????????????????????? ? ??????
- ????????????????????????????????? (Data transfer)
- ??????????????????????????? (Arithmetic)
- ?????????????????????? (Logical)
- ??????????????????????????? (Conversion)
- ????????????????????????????/???????? (I/O)
- ?????????????????????????????? (System control)
16????????????????
???????????????????????????
- ????????
- ??????
- ??????????
- ???????????
17??????????????? Pentium
- General
- Integer
- Ordinal
- Unpacked binary coded decimal (BCD)
- Packed BCD
- Near pointer
- Bit field
- Byte string
- Floating point
18???????????????????????? Pentium
19??????????????? PowerPC
- Unsigned byte
- Unsigned Halfword
- Signed Halfword
- Unsigned Word
- Signed Word
- Unsigned Doubleword
- Byte String
20????????????
- ?????????????
- ????????????
- ??????????????????????????????
- ???????????????
- ????????????????????????
- ?????????????????????
- ?????????????????
- ?????????????????????????????
21???????????????????????????
?????? ??? 89ABCDEF
(?) ????????????? Little Endian (?) ?????????????
Big Endian
22???????????????????????
- ??????????????????????????????? (Immediate
Addressing) - ?????????????????????? (Direct Addressing)
- ??????????????????????? (Indirect Addressing)
- ???????????????????????????????????? (Register
Direct Addressing) - ????????????????????????????????????? (Register
Indirect Addressing) - ????????????????????????? (Displacement ????
Indexed Addressing) - ??????????????????????????? (Relative Addressing)
- ??????????? (Stack)
23Immediate Addressing
LOAD X, 1000 ????????????????? 1000 ????????????
X
24Direct Addressing
LOAD X, 1000 ????????????????????????????
1000 ???????????? X (?????????????? 1000
????? 10 ??????? X ?????????????? 10)
25Indirect Addressing
LOAD X, (1000) ???????????????????????????????????
???????????????????? 1000 (?????????????? 1000
????? 1002 ??????????????????????????????????????
1002 ??????????? 20 ??????? X ?????????????? 20)
26Register Direct Addressing
LOAD X, R1 ?????????????????????????????? R1
???????????? X (???????????????? R1 ????? 30
??????? X ?????????????? 30)
27Register Indirect Addressing
LOAD X, (R1) ?????????????????????????????????????
???????????????????? R1 ???????????? X
(???????????????? R1 ??????? 1001 ??????????????
1001 ??????????????????? 40 ??????? X
?????????????? 40)
28Displacement ???? Indexed Addressing
LOAD X, (R1)Constant ????????????????????????????
??????????????????????????????????????????????????
?? ???????????? X (???????????????????? 1000,
??????????????? 2 ????????????????? 1002
???????????? 20 ?????????? X ????????? 20)
29Relative Addressing
LOAD X, PCConstant ??????????????????????????????
??????????????????????????????????????????????????
????? ???????????? X (?????????????????????????
1000, ??????????????? 1 ????????????????? 1001
???????????? 40 ?????????? X ????????? 40)
30Stack
LOAD X, Stack ????????????????????????????????????
????????????? X (?????????????????????????????????
? 1000 ??? X ?????????????? 1000 ???????)