문제

VHDL에서 8051 지침 전체를 처음부터 구현하고 있습니다. 대부분의 일은 잘 진행되었지만이 두 가지 지침을 발견했습니다.

JB bit,rel
00100000 bit_address rel_address

CJNE A,#data,rel
10110100 immediate_data rel_address

모든 도움이나 힌트는 대단히 감사합니다. 미리 감사드립니다!

도움이 되었습니까?

해결책

상대 주소는 프로그래머가 제공합니다. 이것은 일반적으로 라벨에서 어셈블러에 의해 계산됩니다.

ASM 파일에는 다음이 포함됩니다.

   ...asm code
   ...asm code
   JB some_bit, some_label
   ...more asm code
   ...more asm code
   ...more asm code
some_label:
   ...more asm code
   ...more asm code

어셈블러는 JB 명령과 레이블 사이의 코드를 분석하고 레이블에 도달하는 데 필요한 오프셋의 바이트 수를 계산합니다. 이것이 JB 명령에 유입되는 숫자입니다.

여기 8051 지침에 대한 좋은 설명입니다.

다른 팁

어쩌면 당신은 힌트를 얻을 수 있습니다 http://www.cs.ucr.edu/~dalton/i8051/i8051syn/ ?

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top