메모리 맵 입출력: 두 판 사이의 차이
내용 삭제됨 내용 추가됨
JongAmPark (토론 | 기여) 편집 요약 없음 |
JongAmPark (토론 | 기여) |
||
57번째 줄:
Assuming the fourth register of the video controller sets the background colour of the screen, the CPU can set this colour by writing a value to the memory location A003 using its standard memory write instruction. Using the same method, glyphs can be displayed on a screen by writing character values into a special area of RAM within the video controller. Prior to cheap [[Random access memory|RAM]] that enabled [[bitmap|bit-mapped displays]], this character cell method was a popular technique for computer video displays (see [[Text user interface]]).
== 불완전한 어드레스 디코딩 ==
디바이스가 어드레스를 완전히 디코딩할 수도 있고, 혹은 불완전하게 디코딩할 수도 있다.
* 완전히 디코딩을 하게되면 [[어드레스 버스]]의 모든 라인을 검사하게 되는데, CPU가 매핑되지 않은 메모리 영역을 억세스하면 오픈 [[data bus]] 상태를 야기한다.
* 불완전한 디코딩, 혹은 부분적 디코딩이라고 하는 방법은 일부의 어드레스만을 검사하는, 더 간단하고 대체적으로 단순한 로직을 사용한다. 이런 간단한 디코딩 회로는 디바이스로 하여금 여러개의 다른 어드레스에 반응을 할 수있거나, 메모리 맵의 다른 곳들에 해당 디바이스의 가상본을 효과적으로 만들 수있게 한다. 이때 이 가상본들은 모두 똑같은 실제의 디바이스를 가르키게 된다. 그래서 보통은 이런 방식을 쓴다고해서 특별하게 좋을 것은 없다. 단 디코더를 단순하게 만들 수있다는 장점이 있다. 보통 디코딩하는 그 로직 자체는 프로그래머블하기때문에, 시스템이 필요에 따라 메모리 맵을 재설정할 수있다.
== 참고 문서 ==
|