회원가입 ID/PW 찾기
AA

간접지정방식에서요


Movx @DPTR , A 는 무슨 주조 지정방식인가요?

Movx a, @DPTR은 간접지정방식인건 알겠거든요

근데 책에 보니깐

읽거나 전송하고 자하는 어드레스를 R0 R1 DPTR 에 저장하고 이 레지스터를 지정하면 저장된 내용이 곧 액세스 하고자 하는 데이터의  어드레스가 되는 간접  어드레스 지정 방식이다.

이렇게 나왔는데,, 위에있는것과 아래있는것 모두 같은 지정방식인가요?

댓글 1
  • No Profile

    저도 초보인데 몇글자 적어봅니다.
    우선
    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으로 주세요. 아는 것은 답변해 드립니다.

하드웨어 설계 및 개발에 대하여 개발자들이 자유롭게 토론하는 공간입니다.
- Q&A, 자유주재 토론, 관련 정보 공유
- 분야 : 마이크로프로세서 응용, 전기/전자(아날로그/디지털) 회로 설계, C/C++ 프로그래밍, 펌웨어,
         PCB Artwork, 트러블슈팅 등 하드웨어 설계에 관한 전반인 내용
※ 게시글에 맞는 분류를 선택하여 글을 작성해 주시면 쾌적한 사이트 운영에 많은 도움이 됩니다.
※ 하드웨어 인사이트는 회원들간의 거래정보를 게재할 뿐이지, 그 어떤 책임과 의무도 가지지 않습니다.

search
번호 분류 제목 글쓴이 조회 수 날짜
등록된 글이 없습니다.
  • 산이 그곳에 있기에 오르는 것이다.
    - 맬로리
  • * 납포인트 정보 *
  • 글 작성 : 3
  • 댓글 작성 : 1
  • 내 글이 추천받음 : 1
저작권법에 위배되는 콘텐츠는 등록 불가하며, 저작물에 대한 권리는 저작자에게 있습니다.
Copyright 2006-2021 © hardwareis.com, All rights reserved.