인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

Inflearn Community Q&A

whatdabuck's profile image
whatdabuck

asked

ARM Cortex-M Processor Programming

s323_bit operation instruction

bics 명령어 질문드립니다.

Written on

·

233

1

bics r0, r1, #3 << 30

이 동작이 이해가 가지 않습니다 ,,,

 

#3 << 30이 뭘 뜻하는지 모르겠습니다 ㅠㅠ

 

 

arm-architecturecortex임베디드

Answer 1

0

guileschool님의 프로필 이미지
guileschool
Instructor

안녕하세요. 박종호님

영상에도 나와있듯이 bics r0, r1, #3 << 30 명령어는 bics r0, r1, #0xC0000000 와 완전 동일한 기능을 수행하는 명령어로써 여기서는 r1 레지스터의 31번과 30번 비트를 지우는 기능으로 활용됩니다.

예를들어 볼게요.

bic r0,#0xff 의 경우는 r0 레지스터의 7번~0번 비트가 지워지게 되며(r0=r0 & 0xff)

bic r0,r1, #0xff 의 경우는 r1 레지스터의 7번~0번 비트가 지워진 결과가 r0에 저장됩니다. 이때 r1 의 값은 이 명령어의 실행 전과 실행 후가 동일하게됩니다(r0=r1 & 0xff)

실습파일과 함께 제공해드린 PDF 문서(ARM CORTEX-M 프로세서 프로그래밍.pdf) 132쪽 BIC 명령어를 참고해보시면 좋겠습니다.

 

whatdabuck's profile image
whatdabuck

asked

Ask a question