https://ezbeat.tistory.com/359 위 블로그에도 많은 정보들이 있습니다. ARM의 명령어의 종류에는 데이터 처리 명령어 분기 명령어 Load/Store 명령어 Software Interrupt 명령어 Program Status Resgiter (PSR) 명령어들이 있습니다. 각각에 대해 살펴보도록 하겠습니다. 1. 데이터 처리 명령어 - ARM은 RISC아키텍쳐이므로 명령어의 길이는 32bit으로 고정입니다. - 3-address 형식을 지닙니다. - 각 연산은 1개의 cycle에 실행됩니다. - 조건부로 실행이 가능합니다. - 기본적으로 결과가 상태플래그 CPSR에 영향을 주지 않습니다. - 명령어에 S를 붙여주면 상태플레그 CPSR에 영향을 줍니다. (ADD -> ADDS , S..
c코드 파일을 하나 만들고main.c로 가정 cmd 창에서 알맞은 경로로 들어가준 다음에 armcc -S main.c하면 c파일을 바탕으로 어셈블리 파일 main.s가 생성됩니다. armasm -g main.s하면 어셈블리파일을 바탕으로 오브젝트파일(main.o)을 디버깅속성(-g)을 넣어주고 생성합니다. armlink main.o -o main.axf하면 오브젝트파일을 바탕으로 ARM 실행파일 main.axf가 만들어집니다. 이 .axf 파일을 DS-5의 디버깅 경로에 넣어서 테스트하면 됩니다.
이번엔 ARM 프로세서의 예외 발생에 대해 알아보자. 1. ARM Exception Exception은 앞서 설명했듯이 CPU내부에서 발생하는 예외이다.Interrupt는 CPU외부 hw에서 발생하고trap은 sw인터럽트로써 system call에 의해 호출된다. 이렇게 3가지로 나누어져 있으나, 여기 ARM Exception은 위 3개를 모두 "동일"한 것으로 취급해서 설명하겠다. - Exception ( Interrupt ) 처리과정 1) 현재 CPSR 레지스터 내용이 SPSR 레지스터로 복사됨. (해당 exception의 종류에 맞게 적절하게 값을 설정해서 save) 2) Exception 종료 후 복귀할 pc값 (지금 pc값) 을 LR_ 레지스터에 저장. (LR이 뭐지) 3) pc 에 "vecto..
2장에 이어서 더 자세한 ARM의 특징들을 알아보자. 1. ARM Core의 데이터 흐름도 (폰 노이만 ver) 지금은 위 그림보다 하버드 구조를 더 많이 쓴다. 하버드와 폰 노이만 아키텍쳐의 차이점을 이전 글에서 자세히 설명했다! 2. ARM Date Types ARM 프로세서 내부에서는 어떤 데이터 타입들의 전송이 일어나고 있을까 - Byte : 8bit- HalfWord : 16bit- Word : 4byte = 32bit- Doubleword : 64bit - Intruction Sets : ARM 명령어는 무조건 32bit로 고정!- Core Instructions : Core 명령어들은 58 3. ARM Register Set - ARM의 Register개수는 몇개일까. RISC니까 32개? ..
1. ARM은 뭘까ARM을 배울건데 ARM은 뭘까, 팔인가?그게 아니라 ARM는 임베디드 기기에 많이 사용되는 RISC 프로세서이다. 2. ARM의 구성ARM의 큰 틀은 아래로 구별할 수 있다. 1) ARM코어명령어 해석하고, 연산하는 녀석. (Databus로 data를 받아옴)2) Data맞다 그 데이터다 근데 여기서 Databus의 종류로 ARM 아키텍쳐가 아래의 2가지로 나뉜다.(1) 폰 노이만 아키텍쳐(2) 하버드 아키텍쳐 3. 폰 노이만 아키텍쳐 - 일반 data와 명령어가 같은 bus를 통해 공유된다. 즉, 메모리가 데이터도 저장하고, 명령어를 구별없이 저장할 수 있다. - 구조는 다음과 같다. 메모리가 2가지 종류의 정보를 읽어올 수 있는데, 1개의 bus를 가지고 동작한다. - 버스가 1개..
1. 임베디드 시스템이란?- 마이크로 프로세서 또는 마이크로 컨트롤러를 내장하여 개발자가 지정한 기능만을 수행하는 장치- 더 큰 시스템의 일부이거나, 독립된 시스템으로서 특정업무를 수행하기 위한 Hw와 SW를 포함하는 응용 시스템 즉, 컴퓨터의 HW와 SW가 조합되어 특정한 목적을 수행하는 시스템. (참고) 1개의 chip에 시스템들이 들어가 있는 것을 System on chip이라고 한다. 2. 임베디드 시스템의 응용분야1) 제어응용 (공정제어)2) 단말응용 (헨드폰)3) 가정용 정보기기 (프린터, 게임기)4) 통신장비 응용 (라우터, 교환기) - 실제사례(1) 공장자동화 (FA : Factory Automation)smart factory에도 쓰이며,센서와 제어시스템 로봇등을 사용하여 무인시스템을 구..
다리 만들기 성공시간 제한메모리 제한제출정답맞은 사람정답 비율2 초192 MB103203500220531.994%문제여러 섬으로 이루어진 나라가 있다. 이 나라의 대통령은, 섬들을 잇는 다리를 만들겠다는 공약으로 인기몰이를 해 당선될 수 있었다. 하지만 막상 대통령에 취임하자, 다리를 놓는다는 것이 아깝다는 생각을 하게 되었다. 그래서 그는, 생색내는 식으로 한 섬과 다른 섬을 잇는 다리 하나만을 만들기로 하였고, 그 또한 다리를 가장 짧게 하여 돈을 아끼려 하였다.이 나라는 N×N크기의 이차원 평면상에 존재한다. 이 나라는 여러 섬으로 이루어져 있으며, 섬이란 동서남북으로 육지가 붙어있는 덩어리를 말한다. 다음은 세 개의 섬으로 이루어진 나라의 지도이다.위의 그림에서 색이 있는 부분이 육지이고, 색이 ..
불한국어 시간 제한메모리 제한제출정답맞은 사람정답 비율1 초256 MB107782359141320.853%문제상근이는 빈 공간과 벽으로 이루어진 건물에 갇혀있다. 건물의 일부에는 불이 났고, 상근이는 출구를 향해 뛰고 있다.매 초마다, 불은 동서남북 방향으로 인접한 빈 공간으로 퍼져나간다. 벽에는 불이 붙지 않는다. 상근이는 동서남북 인접한 칸으로 이동할 수 있으며, 1초가 걸린다. 상근이는 벽을 통과할 수 없고, 불이 옮겨진 칸 또는 이제 불이 붙으려는 칸으로 이동할 수 없다. 상근이가 있는 칸에 불이 옮겨옴과 동시에 다른 칸으로 이동할 수 있다.빌딩의 지도가 주어졌을 때, 얼마나 빨리 빌딩을 탈출할 수 있는지 구하는 프로그램을 작성하시오.입력첫째 줄에 테스트 케이스의 개수가 주어진다. 테스트 케이스는..