'Label'에 해당되는 글 2건

  1. 2014.06.26 Assembly어의 문장 형식 6
  2. 2014.06.16 식별자와 상수



Assembly어의 문장 형식

- AVR Assembly어 문장은 총 4부분으로 나누어집니다.

- Comment를 제외하고 120문자까지 사용할 수 있습니다.



1) Label(레이블)

- ':(콜론)'으로 끝납니다.

- 점프할 곳이나 서브루틴의 위치, 데이터 메모리와 RAM에서 데이터가 저장된 위치(주소)의 이름입니다.

- 내부적으로는 label은 16비트 주소값을 갖는 포인터 변수입니다.


2) Instruction(명령어)

- mnemonic(니모닉)과 directive(지시어)로 구별됩니다.

    • mnemonic - 실질적인 명령을 수행하는 명령어입니다(예제1을 참고).

    • directive - 주변 환경변수 등을 지정하는 명령어입니다(예제2를 참고).


3) Operand(오퍼런드)

mnemonic에 대응하는 피연산자입니다.

- 숫자 상수 혹은 directive에 사용되는 수식 등이 옵니다.

- 명령어에 따라서 연산자의 갯수가 0~2개가 되며, 2개 연산자를 사용할 경우 ',(쉼표)'로 분리합니다.


4) Comment(코멘트)

- ';(세미콜론)'으로 시작되며 컴파일시 Assembler는 이를 무시합니다.

- 프로그램에 대한 주석을 넣는 부분입니다.

- C-언어와는 달리 Assembly어는 특히 가독성이 떨어짐으로 비록 스스로 짠 프로그램일지라도 나중에 유지 및 관리를 위하여 반드시 주석을 다는 습관을 들여야 합니다.







'Embedded Programming > Assembler' 카테고리의 다른 글

식별자와 상수  (0) 2014.06.16
Assembler의 장점  (0) 2014.06.14
Posted by Nature & Life



식별자 (identifier) : 변수명이나 label 명으로 사용할 수 있는 단어입니다.

- 사용가능한 문자들은 A~Z, a~z, 0~9, 그리고 _(underbar) 입니다.

- 식별자의 첫 자는 숫자를 사용할 수 없습니다.

- 255문자까지만 사용할 수 있습니다.

- C 언어와 달리 대소문자를 구별하지 않습니다.





상수를 표기하는 규칙입니다.

- 특별히 지정하지 않은 숫자는 10진수로 취급합니다.

- ASCII 문자는 인용부호(')로 시작해서 인용부호(')로 마칩니다.

- 문자열로 사용할 수 있는 문자는 프린트가 가능한 문자와 공백문자로 한정됩니다.

- 10진수가 아닌 경우는 아래와 같이 첨자로 표기합니다.



참고로 16진수의 경우에 0x와 $ 모두 16진수를 가리키는 첨자로 사용되며 0x의 0은 알파벳 'O'가 아닌 숫자 zero입니다. C 언어와 다르게 어셈블러에서는 간편함으로 $가 자주 사용됩니다.





'Embedded Programming > Assembler' 카테고리의 다른 글

Assembly어의 문장 형식  (6) 2014.06.26
Assembler의 장점  (0) 2014.06.14
Posted by Nature & Life