2012-06-04 3 views
3

나는 6502 어셈블리 언어를 배우고 있고, 문제를 해결하는 데 어려움을 겪고있다. 나는 JavaScript 6502 assembler/emulator을 시도, 대부분의 예처럼 보이는 부분이 있음을 발견했습니다 : 나는 Google에 어떤 dcb 수단 시도했습니다DASM을 사용하여 바이트를 어떻게 직접 설정합니까?

colors: 
    dcb 0,0,0,0,0,$9,$9,1,1,0,0,0,0,0 

을, 내가있어 가장 가까운 소수점으로 구분 바이너리 . 소스 코드를 살펴보면 어셈블러가 값을 가져 와서 코드의 현재 위치에서 각 바이트를 별도의 바이트로 삽입하는 것처럼 보입니다.

DASM을 로컬로 사용하여 코드를 어셈블하는데, dcb을 지원하지 않습니다. 이 같은 코드에서 직접 바이트 값을 설정하는 DASM에 상응하는 방법이 있습니까?

+3

답변을 게시 한 후 'dcb'의 의미를 아직 알지 못하면 'DC'는 상수 정의, 바이트는 'B'를 나타냅니다. – AusCBloke

+0

다양한 어셈블러의 다른 일반적인 니 메믹은 데이터 바이트에 대해'.byt' 또는'.db'였습니다 (이 경우'.dw '는 보통 16 비트 값, 즉 데이터 워드에서 작동합니다). – LawrenceC

답변

0

자주 묻는 질문은 제가 대답을 찾는 데 도움이되었습니다. this page에 따르면 .DC이이 용도로 사용됩니다.

colors: 
    .DC 0,0,0,0,0,$9,$9,1,1,0,0,0,0,0 
1

.DC가 잘 작동하지만 DASM에 직접 해당하는이 AusCBloke 말했듯이

colors: 
    dc.b 0,0,0,0,0,$9,$9,1,1,0,0,0,0,0 

b는, 바이트입니다 : 같은

그래서 질문의 예를 보일 것이다. 단어 (2 바이트)는 w으로, 긴 단어 (4 바이트)는 l으로 바꿀 수 있습니다.

dc.x의 목적이 현재 위치에 상수 값을 주입하는 것이라는 것을 올바르게 추측했습니다.