inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

ARM Cortex-M 프로세서 프로그래밍

s304_IT 명령어

it 명령어 중첩

305

남윤아

작성한 질문수 3

1

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.

안녕하세요! 교수님. 강의를 듣다가 It관련하여 궁금증이 생겨 질문글을 올립니다.

 

It 명령어는 C언어에서 If명령어와 같은 역활을 하는데 그렇다면 C언어 처럼

It 멍령어도 중첩해서 사용할 수 있나요??

예를 들어

cmp r0, r1

ite ge

it ge

movge r0, r0

moglt r0, r1

이런식으로 사용할 수 있을까요?

cortex 임베디드 arm-architecture

답변 2

0

남윤아

감사합니다!

0

홍영기

안녕하세요. 남윤아님!

결론부터 말씀드리자면 중첩은 허용되지 않습니다.

IT 명령어는 테스트 명령어로써 말씀하신것처럼 C언어의 if 와 동일한 효과를 갖는 명령어가 맞습니다.

이 명령어는 EPSR 레지스터 내의 IT 비트(Bits 26:25, 15:10) 와 의존성 관계를 맺고 있습니다. IT 명령어의 테스트 결과가 EPSR 에 저장되고 그 값을 기초로 그 이후 명령어의 실행 여부(e.g. movge r0, r0)가 결정되는 것이지요.

따라서 중첩 사용이 되지 않는 것입니다.

0

남윤아

답변 감사합니다. 교수님!

그렇다면 만약 중첩이 성립되려면 EPSR레지스터나 기타 관련된 레지스터가 필요에 따라 더 필요하다는 말씀이신건가요??

0

홍영기

말씀드린것처럼 it 명령어만으로는 중첩 사용이 허용이 되지 않습니다.

그러므로 cmp, tst, teq 등의 테스트 명령어와 bne beq bgt ... 조건 분기문을 이용하셔야 할 줄로 압니다.

이 글을 참고하세요.

stm32cubeide 관련 문의

0

52

2

DMA 관련한 강의도 제작해주실 수 있으신가요 ?

0

100

1

그림들도 해석 할 수 있어야 하나요?

1

103

2

no-stlink

1

82

2

4개의 CPU 사이클이 필요한 이유

1

101

2

MAC으로 진행 질문드려요..

1

95

2

학습 진행 시, 사용하는 Board에 대한 문의 드립니다!

0

160

2

push pop 질문

1

192

2

STM32Fx Cortex ARM 프로그래밍 저자:홍봉조, 출판사:지식과 감성

0

242

1

CORTEX_02_ASSEMBLY 빌드시 에러

1

270

1

외부 ST Link 연결 이용한 SWD 방법

0

342

1

파이프라인과 명령어

1

327

1

명령어 fetch

0

238

1

lr 레지스터 LSB 값

1

261

1

Disassembly 창 문제

0

350

1

s702 강좌에서 사용한 technical reference manual 문서

1

328

1

s702에 원자적 Access 를 위한 BSRR 코드작성 부분에 대해서

1

273

1

s202 LED 점등 예제 실행시 에러

2

351

1

STM32F429I-DISC 보드의 펌웨어

2

395

1

제공되지 않은 강의교재

0

319

1

s524 테일체이닝 강의 질문

0

235

1

부트코드와 부트로더의 차이점

1

1528

1

메모리 맵 질문

0

288

1

xPSR 레지스터 플래그 값 및 기타 질문 드립니다.

1

864

2