임베디드 시스템 실험 3주차 ARM Assembly Study(2), ADS
- 최초 등록일
- 2013.10.28
- 최종 저작일
- 2012.03
- 27페이지/
한컴오피스
- 가격 4,000원
![할인쿠폰받기](/images/v4/document/ico_det_coupon.gif)
목차
1. Title
2. Name
3. Abstract
4. Experimental Results
5. Conclusion
6. References
본문내용
4. Experimental Results
실험7) General data processing instructions - Discussion
ADD, SUB, RSB, ADC, SBC, and RSC
AND, ORR, ROR, and BIC
CMP and CMN
1. Felxible second operand
immed_8r
Rm
ASR n
LSL n
LSR n
ROR n
Most ARM general data processing instructions have a flexible second operand.
This is shown as Operand2 in the descriptions of the syntax of each instruction.
다음 ASM code가 어떤 동작을 하는지 설명하고, 실제 동작하도록 code를 완성하고 동작을 보여라.
<중 략>
또한 RSCLES에서 'LE'는 Less than or Equal을 뜻하는 Conditional suffix이다. 동작조건이 Z Set 또는 N Set,V Clear 또는 N Clear,V Set인데, 동작하기 전의 CPSR이 N Set,V Clear를 만족했기 때문에 명령어가 동작했고, 'S' suffix가 있기 때문에 뺼셈을 보수를 취한 덧셈으로 계산하면서 생긴 Carry로 인해 CPSR Flag가 N Flag가 Clear되고 C Set으로 설정되는 것을 확인할 수 있었다.
또한 RSC는 Reverse Substract with Carry로서 C Flag가 Clear되면 부가적으로 1을 빼는 명령어인데 C Flag가 Set되었기 때문에 1이 더 마이너스되지 않은 것도 확인할 수 있었다.
2번 부제에 적혀있는 명령어 중에서 예제에 빠져있는 SBC(SuBsitract with Carry)에 대해 부가적으로 설명하면, SUB명령어와 같이 뺄셈을 하는 명령어 이지만 C Flag가 Clear됐을 경우에 1을 더 마이너스하는 명령어라는 점에서 SBC와 SUB의 차이점이 있다고 할 수 있다.
<이하생략>
참고 자료
ADS Developer Suite Assembler Guide / ARM
[HandOut]1_2._ARM_Architecture_and_Exception
[HandOut][2주차]_ARM_ASSEMBLY실습
[HandOut]1_3.ARMasm
[HandOut]ARMasm(2)
kkamagui의 프로그래밍 작업실 - http://kkamagui.egloos.com/
네이버 블로그 - http://blog.naver.com/venezia99