??????/????????
??????
??/??
(
??????
:
input/output: I/O
) ??????????????
???????/??????
?????
???????????
????????????????????????
????????????????????
(???????????????) ???????????? ?????????????????????????????????????????????????????
??????
?????????????????????????????????????????????????? ???
????????
???????????????????????????????????????????????? ?????????????????????????????????????? ???????? “??????????/??” ????????????????????????????????????????????????????? ?????????? (????????????) ??????????????????/???????????????????????????? ????????????
?????????
????
?????
????????????????????????????????????????? ????????
?????
???
????????????
???????????????????????????????????????? ?????????????????????????????????????????????? ????
??????
????
?????????????????
???????????????????????????????????????????????
???????????????????????????????????????????????????????????????????????????????????????? ???????????? ????????????????????????????????????????????????????????????????????????? ??????????????????????????????????????????? ???????????????????????????????????????????????????????????????? ??????????????? ???????????????????????????????????????????????????????? ???????????????????????????????????????????????????????????????????????????? ????????????????????????????????????????????????????????????????????????? ????????????????????????????????????????????????
????????????????????????????????????
(human-computer interaction)
???????????????????????? ?????????????????
?????????????????
???
???????????????
??????????????????? “????” ?????????????? (????????????????????????????????????????????????????????????
?????????
?????????????) ???????????????????? ?????????????????????????????????????????????????????????? ????
?????????????????
????????????/?? ?????????????????????????????????????????????
??/????????????????????????
(memory-mapped I/O) ?????? ?????????
???????????????
???????????????????
?????????????????
(device driver)
????????????????/??
???????????????????????????????????????????????????????????????????????????????????????????? ????????????????????????????????????????????????????????????
?????????????
[
???
]
???????????????/?????????????????????????????????????/??????????????????????????????? ?????????????????????????????????????????????????????????????????????????????????????????
????????????
(handshaking) ?????????????????????????????????????????????????????????????? BUSY, READY, WAIT ???????????????????????????????????????????/??????????????????????? ???????????????????????????????????????????? ???????????????????????????????????????????????????????????????????????? ????????????????????????
???????????????
(interrupt) ??????????????????????????????????????????????????????????????????????????????????????????
?????????????????????????/???????????????????????? ????????????????????????????????????????????????????????????????????????? ?????????????????????????????????????????????????????????????????????????????
???????????????????????????????
[
???
]
??????????????
????????????????????????????????????????????????????????????? ???????????????????????/?????????????????????????????????????????? ???????????? ????????????????????????????????????????????????? ? ????????????????
????
????????????????
??????
??????????????
???????????????????????
???????
????????????????????????????????????? ? ????
???????????
(stream) ?????????????? ????? ????????????????????????
????????????????????
???????????????????????????????????????????????????????????????????????
??????????
?????????? 68
????????????????????????????????????????????????????????????????????????
????????
(transput) ???????????????????????????? 68 ????????????????????????????????????????????????
stand in
,
stand out
,
stand errors
???
stand back
?????????????????????????????????????????/??
?????
(I/O monad) ?????????????????????????????/????????????? ??????????????????????????????????? ???????????????????????????????????/?????????????
???????????
?????????????????????? ??????????????? ?????????????????????????????????????????????????????????????
??????????????????
[
???
]
MOV
register
,
[
address
]
; ????
MOV
[
address
],
register
; ?????
; ???????????????
IN
register
,
[
address
]
; ??????????????
OUT
[
address
],
register
; ?????????????????
???????????????????????????????????????????????????? ????????????????????????????????????????????? ???????????????????????????????????????? ?????????????????????????????????????? ???????????????????????? ??????? ??????????? ???????? ?????? ????????????? ?????????? ???
????????????????????????
[
???
]
?????????????????????????????????????????????????????????????????????? ????????????????????????????????? ?????????????????????????????????????????????????????????????????????????????????? ????????????
[1]
MOV
register
,
[
address
]
; ????
MOV
[
address
],
register
; ?????
; ???????????????
IN
register
,
[
address
]
; ??????????????
OUT
[
address
],
register
; ?????????????????
???????????????????????
address
??????????????????????????????????????????? ??????????????????????????
register
??????? ????????????????
register
???????????????????????????????? ?????????????????????????
???????????????????????
(dereference operator)
?????????????????????????
[
???
]
?????????????????
address
?????????????????????????????????????????????? ???????????????????????????????????????????????????????????????? ???????????????????????????????????????????????????????????????????????????????? ????????????????????????????????????????????????? ???????????????????????????????????????????????? ?????????????????????????????????? ?????????????????????????????????????????????????????? ???????????????????????????????????????? ????????????????????????????????????????????????
???????
[
???
]