도와주세요!!
글 수 15,339
2003.02.20 11:03:20 (*.186.48.184)
6793
짝홀을 구분하는 것은 16비트로 엑세스 하기 때문입니다.
메모리 포인터를 16비트로 해서 읽을때 만일 홀수의 데이타라면
마지막 16비트를 엑세스 하면 정상적인 한바이트는 상위바이트에있고
하위바이트에는 쓰레기값이 들어 있죠.. 우리가 원하는 것은 정상
바이트가 하위에 있어야 합니다. 그래서 짝홀을 구분하죠..
(음 이걸 little-endian 이라고 합니다.)
부연 설명하자면 메모리포인터가 16비트라면 이 포인터가 하나 증가하면
주소는 2증가 하죠.. 이해가 안되시면 이해될때까지 노려보세요
네트웍칩을 다루시려면 반드시 필요합니다.
그리고 네트웍칩의 경우 PIO 모드로 동작시 실제 데이타를 읽고쓰는
영역은 메모리처럼 접근하지 않고 FIFO로 접근합니다. 네트웍칩의
특정주소 한곳에 계속적으로 엑세스하게 되죠.. 이때 한번 엑세스마다
내부 주소가 자동으로 증가하게 됩니다. 칩의 이런부분도 고려해야
합니다.