.ORG
지시어가 올바르게 표시되지 않습니다. 프로세서는 주소 0에서 명령 실행을 시작하지만 데이터를 거기에 배치했습니다. 또한 10 바이트의 데이터가 있지만 8 바이트 만 데이터를 넣을 수 있습니다. 데이터가 무엇인지 확실하지 않습니다. 레이블을 지정하지 않았기 때문입니다. 지시가 있어야하나요? LCD 디스플레이의 숫자는 무엇입니까?
프로그램에 수행하려고하는 내용을 설명하기 위해 코드에 몇 가지 설명을 추가하면 도움이됩니다. 스택 포인터를 설정하고 포트 방향을 설정하는 부분을 볼 수 있지만 루프를 분석하려고하지는 않습니다. 무슨 뜻인지 말해주세요.
처음에는 .ORG
위치를 변경하려고 시도 할 수 있습니다. 종종 프로그램에는 "main :"이라는 부분이 있으며, 첫 번째 명령은 .ORG $0
에 있으며 점프로 사용됩니다. 이렇게하면 프로그램 상단에 데이터를 배치 할 수 있습니다 (예 : .ORG $08
). 코드에서 쉽게 찾을 수 있지만 실수로 실행되지는 않습니다.
.INCLUDE "M32DEF.INC"
.ORG $00
jmp main
.ORG $08
digits: .DB $FC,$30,$6E,$7A,$B2,$DA,$DE,$70,$FE,$FA
main:
LDI R16,$01 ; set stack pointer
OUT SPH,R16
LDI R16,$00
OUT SPL,R16
and so on
나는이 질문 – zx485
이 질문을 http://arduino.stackexchange.com/에 속하기 때문에 오프 주제로이 질문을 닫으 투표 해요는 아두 이노과는 아무 상관이 없습니다. 태그가 말하는 것처럼 AVR의 어셈블리입니다. – UncleO