포럼 회원으로 등록하신분만 다운로드가 가능합니다. 최대 업로드 가능한 용량은 20MB 입니다.

이 문서는 2004년 이채원님이 정리해 주셨던 문서 입니다.

본 문서의 내용은 Red Hat GNUPro Toolkit의 Manual 자료 중 하나인 GNUPro Auxiliary Development Tools 문서의 Using as 부분에서 8장 Assembler Macro Directives의 내용을 참조 및 발췌한 것임을 밝힙니다.

또한 일부분에 예제로 사용된 Macro 예제의 일부는 CLABSYS (http://www.clabsys.co.kr)의 자료실에 공개된 소스에서 발췌한 것임을 밝힙니다.
 
[1] ADS, SDT에서의 MACRO

 MACRO
 WR32 $ADDR, $DATA  ; [ADDR]=DATA

 LDR r0, =$ADDR
 LDR r1, =$DATA
 STR r1, [r0]
 MEND
;………………………………………………………….

WR32  INTMSK, 0xFFFFFFFF


[2] GNU AS에서의 MACRO

.macro   WR32  addr, data
   ldr      r0, =addr
   ldr      r1, =data
   str      r1, [r0]
.endm

@………………………………………………………….

WR32  INTMSK, 0xFFFFFFFF


 
[3] ADS, SDT에서의 Data Memory 세팅 반복 처리
- 특정 영역에 0 ~ 5의 값을 DCD로 할당하는 예제
(MMU 세팅 등에 이용할 수 있음.)

 GBLA count

 AREA    |Data$$PageTable|, DATA, READONLY, ALIGN=14

 EXPORT  PageTable

PageTable

count SETA 0
 WHILE count <= 5
 DCD count
count SETA count + 1
 WEND

 END

profile

인생은 연극이고 세상은 무대이다!

이솝 임베디드 포럼 운영 및 비즈니스와 관련된 것 이외에 E-Mail이나 메신저 및 휴대폰 등을 통한 개인적인 질문 및 답변은 받지 않습니다. 문의 사항은 이솝 임베디드 포럼 게시판을 이용해 주시면 감사하겠습니다.

엮인글 :
http://www.aesop.or.kr/index.php?mid=Board_Documents_Linux_Applications&document_srl=35444&act=trackback&key=28d
List of Articles
번호 제목 글쓴이 날짜 조회 수

사용자 로그인