임베디드 용어정리 03

2010. 4. 15. 16:31개발자 공부방/임베디드교육

ARM명령어

Branch 명령어

  • B there : 무조건 there로 분기하라
  • BEQ fred : R1이 0이면 fred로 분기
  • BL sub+ROM : 어드레스를 계산 후서브루틴콜
  • 분기할 주소 계산 : PC값을 기준으로 비트[23:0]에 해당하는 Offset이 사용된다.

    분기 가능한 어드레스 영역 : PC +/- 32MB

  • BL명령 : 다음에 수행할 명령의 위치를 LR에 저장한다.(LR = PC -4)

 

산술연산

  • ADD : 더하기 ex) ADD r0, r1, r2 => r0 = r1 + r2
  • ADC : 캐리와 함께 더하기
  • SUB : 빼기
  • SBC : 캐리와 함께 빼기
  • RSB : 역으로 빼기 ex) RSB R0, R1, R2 => R0 = R2 – R1
  • RSC : 캐리와 함께 역으로 빼기

 

논리 연산

  • AND : 특정비트를 0으로 만들 때 사용
  • ORR : 특정비트를 1로 만들 때 사용
  • EOR : 비트를 반전시킬 때 사용(서로 다를 때 만 1)
  • BIC : BIT클리어 ex) BIC r2, r3, #7 => r2 = r3 and (not #7)

 

script.read load.min

script.read flash.min

script.read flash.ini

 

    cmp r0, r1

    movlt r0, #1

    movgt r0, #2

    moveq r0, #3

 

 

 

 

 

 

 

 

'개발자 공부방 > 임베디드교육' 카테고리의 다른 글

임베디드 교육  (0) 2010.04.20
임베디드 용어정리 02  (0) 2010.04.15
임베디드 용어정리 01  (0) 2010.04.15