본문 바로가기
반응형

분류 전체보기2980

20151129 / ARM 어셈블리_2- 남수진 ARM(126p ~ 161p) APCS(ARM Procedure Call Standard) CPU에 따라 함수 호출 규약이 다름 ARM의 레지스터 사용 규약 ARM에서 코딩한 소스를 APCS에 맞춰 컴파일해 기계어를 만든다 ARM 레지스터 역할 ARM 어셈블리 프로그래밍할 때 표의 register, synonym, special 이름 세가지 다 사용해도 됨 R0~R3, SP, LR, PC 레지스터를 많이 사용한다 R0~R3 argument 함수 내에서 r0~r3를 사용한다면 이 레지스터 값들을 스택에 저장해둔다 최적화를 위해 함수의 인자는 4개 이하로 하는 것이 좋다 5번째 인자부터 스택에 저장하므로 4번째 인자까지는 레지스터 R0~R3 에 저장하므로 속도가 더 빠르다 result 함수의 return값을.. 2015. 11. 29.
20151127 윤재희 #2. ARM/ Thumb PCS - 레지스터 사용법 ~ 컴파일에 대한 단상 ==================================Outline====================================ARM/ Thumb PCS - 레지스터 사용법ARM은 Interrupt냄새를 어떻게 맡는가ARM SoC (System On Chip) - ARM 그렇고 말고AMBA - SoC안에서 IP끼리의 Bus 규격Little Endian과 Big Endian컴파일에 대한 단상---------------------------------------------------------------------------- 임베디드 레시피 p/126 ARM/ Thumb PCS - 레지스터 사용법 ARM은 accumulator 레지스터가 따로 존재하지 않고 변수를 사용하여 연산을 한다. r0 ~.. 2015. 11. 29.
2015.11.27_개인업무일지_[ASM #2]_이량경_함수호출 규약 ✔ ================================================================ ✔ APCS 약속1) 함수를 부를때 레지스터는 어떨게 사용해야 하는가?2) 리턴값은 어떻게 ?3) 스택은 어떨때?4) 1~3 에서 사용된 레지스터 이외 레지스터는 어떻게 사용?이런 레지스터 사용법을 통칭- PCS(Procedure call Srandard)- APCS : ARM Procedure Call Srandard (구버전)- TPCS : Thumb Procedure Call Srandard (구버전)- ATPCS : ARM-Thumb Procedure Call Srandard(AAPCS의 선배)- AAPCS : Procedure Call Srandard for ARM Archit.. 2015. 11. 29.
20151127 임현수 업무일지 ARM #2 함수호출규약 LRESULT CALLBACK WndProc(HWND hWnd, UINT iMessage, WPARAM wParam, LPARAM lParam ){ HDC hdc; PAINTSTRUCT ps; static HWND c1, c2, c3, c4; static BOOL ELLIPSE = FALSE; switch (iMessage) { case WM_CREATE: c1 = CreateWindow(TEXT ("button" ), TEXT("Draw Ellipse?" ), WS_CHILD | WS_VISIBLE | BS_CHECKBOX, 20, 20, 160, 25, hWnd , (HMENU )0, g_hInst, NULL); c2 = CreateWindow(TEXT ("button" ), TEXT("Good by.. 2015. 11. 29.
20151128 엄민웅 - arm 임베디드레시피 이론 수업 (교제 127~161) 구조체 대입 어셈블리 코드 확인 해보기. 예제)12345678910111213141516171819202122232425#include typedef struct _person{ char name[20]; char phoneNum[20]; int age;}person; int main(){ person arr= {"ZZYYXX", "1234567890", 111}; person tamp; person tamp2; // sol 1. tamp = arr; // sol 2. strcpy(tamp2.name, arr.name); strcpy(tamp2.phoneNum, arr.phoneNum); tamp2.age = arr.age; return 0;} cs ; Line 17 mov ecx, 11 ; 000000.. 2015. 11. 28.
20151127 - 홍준모 ARM~>ASM 2일 차 - 126p~ 책 126p Exception 발생 조건-SVC mode-Power on / reset-IRQ mode-Hardware적인 interrupt 발생한 경우-FIQ mode-Interrupt 중 fast interrupt가 발생한 경우-ABT mode-Access하려는 주소가 없는 주소-Instruction fetch에 실패한 경우-UND mode-Instruction을 decode했는데 ARM이 모르는 경우 Exception 우선 순위-Reset-Data abort-FIQ-IRQ-Prefetch abort-Undefined instruction-SWI *CPSR - 현재 mode가 어떤 mode 였는지에 대한 정보가 들어가 있다.이셉션 핸들러 가 함수고, 리턴이 st PCS-Procedure Call.. 2015. 11. 27.
20151127-김재홍-ARM_Assembly_2일차 /***ARM_Assembly_2일차***/ embedded recipes 132_Page APCS : ARM Procedure Call Standard1) 함수를 부를 때 레지스터는 어떻게 사용해야 하는가?2) return 값은 어떻게 돌려주는가?3) stack은 어떨 때, 어떻게 사용되는가?4) 1)~3)에서 사용된 레지스터 이외의 레지스터들은 어떻게 사용되는가?이와 같이 일반 레지스터를 쓰는 이런 약속을 APCS 즉, ARM Procedure Call Standard라고 부르고, 이 Standard에 맞추어서 Compiler는 기계어를 만들어 냅니다. AAPCS : Procedure Call Standard for ARM Architecturehttp://infocenter.arm.com/help/.. 2015. 11. 27.
20151127 - 권오민 - ARM ASSEMBLY 2일차 ARM ASSEMBLY◆2.Microprocessor 아뜰리에 - ARM을 파헤쳐 보자◉6.ARM Exception과 Modes(P.123)●Software 실행 중, Exception이 발생(P.127)- 고려해야 할 것들. - 1) Exception mode가 발생 한 후, 이전 mode로 돌아갈 수 있어야 한다. - 2) 지금 쓰던 Register 값들을 다시 사용할 수 있어야 한다. - 이전에 쓰던 Context를 다시 복원할 수 있어야 한다. - 3) 이전 mode로 돌아갔을 때 원래 수행 하던 곳으로 돌아 갈 수 있어야 한다. - 4) 그리고 자동으로 해당 Exception Vector로 이동해야 한다.- Exception에 발생에 의한 하드웨어적인 처리. - 1) CPSR(SVC)을 SPSR.. 2015. 11. 27.
2015.11.26_개인업무일지_[ASM #1]_주재민_mode Context는 현재의 CPU에 대한 모든 정보를 말하고요, 그 모든 정보는 Register들의 현재 값들을 말하는 거죠. 각 모드별로 호환될 때 CPSR(Current Program Status Register)에 레지스터의 상태값(context)이 저장되고 모드가 전환될 시 CPSR값을 SPSR(Saved Program Status Register)에 저장하게 된다. 모드가 변경되면 banked register가 덮어지게 되며 원래 레지스터로 복구 되면 기존의 레지스터 값은 복원된다. R14 (Linked Register) = Return Address 저장 레지스터 R13 (Stack Pointer) = ESP(Intel) R15 (Program counter) = EIP(Intel) 2015. 11. 27.
728x90
반응형