고등학교 시절 정보처리과였던 관계로 컴퓨터 하드웨어에 대해 조금 들은 바가 있었습니다. 당시 모니터는 출력장치인 것으로 알고 있었습니다. 그런데 윈도우 프로그램을 만들다 보니 문득 모니터가 출력장치인가에 대한 의심이 들었습니다. 화면에 대한 정보를 읽어올 수도 있기 때문이죠.
BitBlt(memHdc, ~, screenHdc, ~);
여기서 memHdc는 가상의 메모리 DC이고, screenHdc는 화면 DC입니다. 위와 같이 BitBlt 함수를 쓰면 메모리 DC는 스크린에 대한 정보를 가져옵니다. 윈도우 내의 화면 정보를 말이죠. 그렇다면 화면의 정보가 프로그램으로 읽힌다는 것이고요. 그래서 스크린이 과연 출력장치로만 쓰이는 것인가에 대한 의문이 들었습니다. 입력도 되고 있으니 말이죠. 모니터는 어떤 장치인가요? 이 의문이 속시원히 풀릴 수 있을까요? 그리고 그래픽 카드도 입출력장치 아닌가요? 검색해보니 그래픽 카드도 모니터에 대한 출력장치라는 설명만 뜹니다.