간접지정방식에서요
Movx @DPTR , A 는 무슨 주조 지정방식인가요?
Movx a, @DPTR은 간접지정방식인건 알겠거든요
근데 책에 보니깐
읽거나 전송하고 자하는 어드레스를 R0 R1 DPTR 에 저장하고 이 레지스터를 지정하면 저장된 내용이 곧 액세스 하고자 하는 데이터의 어드레스가 되는 간접 어드레스 지정 방식이다.
이렇게 나왔는데,, 위에있는것과 아래있는것 모두 같은 지정방식인가요?
하드웨어 설계 및 개발에 대하여 개발자들이 자유롭게 토론하는 공간입니다.
- Q&A, 자유주재 토론, 관련 정보 공유
- 분야 : 마이크로프로세서 응용, 전기/전자(아날로그/디지털) 회로 설계, C/C++ 프로그래밍, 펌웨어,
PCB Artwork, 트러블슈팅 등 하드웨어 설계에 관한 전반인 내용
※ 게시글에 맞는 분류를 선택하여 글을 작성해 주시면 쾌적한 사이트 운영에 많은 도움이 됩니다.
※ 하드웨어 인사이트는 회원들간의 거래정보를 게재할 뿐이지, 그 어떤 책임과 의무도 가지지 않습니다.
번호 | 분류 | 제목 | 글쓴이 | 조회 수 | 날짜 |
---|---|---|---|---|---|
492 | 마이크로프로세서 | HOT8051 에 마이크로 C/os 포팅하려는데요1 | 나는타조 | 9742 | 2010.04.01 |
491 | 마이크로프로세서 | HOT80511 | 밀향 | 985 | 2010.04.01 |
490 | 마이크로프로세서 | HOT길이가 다른 문자열 비교하는 방법?2 | 소스리 | 1286 | 2010.04.01 |
489 | 펌웨어 & 코딩언어 | HOTzigbee 통신 프로그램 질문입니다!!5 | 소울 | 2442 | 2010.04.01 |
488 | 마이크로프로세서 | HOTALL--11P32 | 그런건가 | 1027 | 2010.03.31 |
487 | 마이크로프로세서 | HOT도트 매트릭스...2 | 배추배추배추 | 708 | 2010.03.30 |
486 | Software & IDEs | HOTVisual C++ 6.0 프로그램이 비스타 작동 안하나요?6 | fairlady | 1291 | 2010.03.30 |
485 | 마이크로프로세서 | HOTproteus isis쓰시는분 도와주세요1 | kusum | 1903 | 2010.03.30 |
484 | Software & IDEs | HOT안녕하세요 혹시 소스나 이전에 프로그래밍되있는것을 찾을곳이있을까요?3 | 꿀이 | 887 | 2010.03.30 |
483 | Software & IDEs | HOT초보에게 추천해주실 트레이닝 키트와 서적부탁드릴게요4 | 꿀이 | 916 | 2010.03.29 |
482 | 머신러닝, AI & 알고리즘 | HOT오목 게임 알고리즘3 | 새로운하늘 | 3459 | 2010.03.29 |
481 | 마이크로프로세서 | HOT8051 완전 초보입니다....6 | 새로운하늘 | 1082 | 2010.03.29 |
마이크로프로세서 | HOT간접지정방식알려주시겠어요?1 | 개똥껄레 | 1246 | 2010.03.28 | |
479 | 마이크로프로세서 | HOT아트메가128를 이용한 도트매트릭스6 | 걍봐줭 | 2078 | 2010.03.27 |
478 | 마이크로프로세서 | HOTpwm 출력6 | 바다새 | 2090 | 2010.03.24 |
477 | 펌웨어 & 코딩언어 | HOT비쥬얼 스튜디오 6.0에 관해서..3 | 꿇단지 | 1060 | 2010.03.24 |
476 | Software & IDEs | HOT저기 레포트점 도와주세요1 | 메리짱 | 780 | 2010.03.22 |
475 | 마이크로프로세서 | HOT안녕하세요. 8051자료 구할 수 있는 방법에 대해(- -) (_ _)4 | 카일 | 1015 | 2010.03.22 |
474 | 마이크로프로세서 | HOTavr atmega128 공부중인데요10 | 짱백 | 1149 | 2010.03.20 |
473 | 마이크로프로세서 | HOTDAC0800을 사용해 0~5V의 아날로그값을 얻고싶습니다. 조언구합니다. | 어쩌라고 | 3632 | 2010.03.20 |
저도 초보인데 몇글자 적어봅니다.
우선
MOV R0, # 20H
MOV A, R0
정도는 아시죠?
1.R0이란 레지스터에 20h라는 데이타를 넣고
2.A레지스터에 R0의 값인 20h를 옮기는 예제입니다.
그럼 여기서
MOV R0,#20H
MOV A, @R0
은 뭘까요?
MOV A, @R0 이란 R0이 가리키는 값
즉 위에서 R0에 20h를 넣었기 때문에 이 값을 데이타 값으로 안쓰고
주소 값으로 사용한다는 말입니다.
무슨 말이냐면 만약 20h라는 주소에 0Bh라는 값이 들어있다고 가정하면
MOV A, @R0 일때 A에 0Bh라는 값이 들어간다는 말입니다.
이것을 간접지정방식이라고 하죠. 그런데 주의할 점은 @는 R0과 R1만 사용이 가능합니다.
책에 나와있죠.
그럼 위에 질문인 Movx @DPTR , A 는 뭔가.
여기서 MOVX라는 것은 MOV 에 X가 붙었음이 보입니다.
확장된 램에 데이타를 보낸다는 말인데
DPTR이란 것은 DPH와 DPL두 부분으로 나우어져 있잖아요? SFR보시면 나옵니다.
이때 DPH와 DPL은 각 8바이트이고 당연히 총 16바이트가 되니까 65536의 데이타를 가리킬 수 있겠죠?
(이 부분 이해안가시면 나중에 다시 설명해 드릴께요.)
그럼 MOVX @DPTR, A란
A에 들어있는 값을 DPTR이 가리키는 곳에다가 넣는다는 뜻입니다.
DPTR은 여기에서 나와있지 않기 때문에 어딘지는 알 수 없네요.
다시 간단히 요약해서 말하면 이렇습니다.
MOVX @DPTR, A 는 결국 확장된 메모리 주소에 A값을 넣고 싶을 때 사용한다는 뜻입니다.
MOVX A,@DPTR이란 뜻은 DPTR이 가리키고 있는 값을 A에 넣으라는 뜻이구요.
(저도 초보인지라 ㅡ.ㅡ; 설명이 부실합니다. 뒤에 보시는 분이 틀렸으면 수정 좀 해주세요. )
질문 있으면 h4434@hanmail.net으로 주세요. 아는 것은 답변해 드립니다.