목록Computer Science (77)
엔지니어가 되고 싶은 공돌이

7. 1. Compiler and Assembler 1. Compiler: C Program -> Assembly Language Program. 2. Assembler: Assembly Language Program -> Machine Language Module. - Pseudoinstruction(의사 명령어): Hardware가 지원하지 않는 Assembly 명령어를, Assembler가 마치 실제로 있는 것처럼 처리하는 명령어. Pseudoinstruction 덕분에 실제의 하드웨어 구현보다 더 풍부한 방법을 제공해줍니다. 다만, Assembler가 자유롭게 활동할 수 있도록 Register($at) 1개를 Assembler 전용으로 제공해야 합니다. - Unix System O..

6. 1. Procedure - Procedure: 제공되는 Parameter(인수)에 따라서 특정 작업을 수행하는 서브루틴. - Procedure의 실행 과정: Procedure가 접근할 수 있는 곳에 Parameter를 넣고, Procedure로 Control을 넘긴 뒤, Procedure는 Memory 자원을 획득합니다. 이후 Procedure는 작업을 수행하고, 결과 값을 호출한 프로그램이 접근할 수 있는 장소에 저장하고, Procedure는 Control을 반납합니다. - $a0 - $a3: 전달한 인수를 가지고 있는 Parameter Register. - $v0 - $v1: Return Value Register. - $ra: 호출한 곳으로 되돌아가기 위한 복귀 주소를 가지고..

5. 1. Logical Operation Instructions Logical OperationsMIPS InstructionsShift LeftsllShift RightsrlANDand, andiORor, oriNOTnor - sll $t2, $s0, 400161040 - not 대신 nor을 쓰는 이유는 3개의 Operand형식을 유지하기 위해서이고, not은 1개의 Operand를 0으로 바꾸면 됩니다. 5. 2. Branch Instructions - beq register1, register2, L1 register1과 register2의 값이 같으면 L1으로 가라는 뜻. - bne register1, register2, L2 register1과 register2의 값이 같지 ..

4. 1. Instruction Format - $t0 ~ $t7은 8 ~ 15번으로, $s0 ~ $s7은 16 ~ 23번으로 매핑합니다. - Field of MIPS Instruction [R Type] oprsrtrdShamtfunct 1) op: 명령어가 실행할 연산의 종류, 연산자(opcode)라고 부릅니다. 6bit 2) rs: First Operand Register. 5bit 3) rt: Second Operand Register. 5bit 4) rd: Destination Register. 5bit 5) shamt: shift. 5bit 6) funct: op필드에서는 연산의 종류를 표시하고 funct에서 구체적으로 연산을 지정합니다. 6bit ex) add $t0, $s1, $s200..

3. 1. Load - 프로그램의 Variable을 Register와 연관짓는 것은 Complier가 수행합니다. 또한, Structure이나 Array와 같은 자료구조를 Memory에 할당하는 것도 Complier가 수행합니다. - 만약, 하나의 Variable이라면 Register로 그대로 들고오면 되지만, Structure나 Array면 Register보다 용량이 훨씬 커서 가져오지 못합니다. 그러므로 이럴 때는 명령어로 해당 Structure나 Array의 Address를 지정해주어야 합니다. - 메모리에서 레지스터로 데이터를 복사해 오는 명령어로 lw(load word)을 사용합니다. ex) Variable g, h는 각각 $s1, $s2에 할당되어 있고, Array A의 ..

2. 1. MIPS Assembly Language - MIPS Instruction Set은 오늘날 사용하는 주요 Instruction Set과 매우 유사하며, 대부분의 Instruction Set들은 간단하게 설계하기 위해서 거의 비슷합니다. - Arithmetic Operations을 수행할 때 반드시 한 줄에 한 종류 연산만 지시하며, 항상 변수 3개를 가집니다. ex) add a, b, c # a = b + c 만약 4개의 변수의 합을 구한다면 아래처럼 3줄로 명령어를 구성해서 계산합니다. ex) add a, b, c add a, a, d add a, a, e - #은 Comment(주석)을 나타내며, 주석 또한 명령어처럼 한 줄만 작성할 수 있습니다. ..

1. 1. Overview of Computer Architecture - 프로그램의 성능은 1) 프로세서와 메모리 2) 컴퓨터 구조 3) 입출력 시스템 4) 알고리즘과 자료구조 5) 프로그래밍 언어, 컴파일러 에 의해 결정됩니다. - 컴퓨터의 발전에 지대한 영향을 미친 아이디어가 있습니다. 1) Moore’s Law에 따른 컴퓨터 구조 설계 2) 추상화 3) 병렬성 4) 파이프라이닝 5) 예측 6) 메모리계층구조 등이 있습니다. - Moore’s Law: 반도체 집적회로의 성능이 24개월마다 2배씩 증가한다는 법칙. - 복잡한 소프트웨어는 수백만 줄의 코드로 구성되어 있습니다. 하지만 하드웨어는 아주 단순한 저수준의 명령어를 실행 할 수 있습니다..

11. 1. General Interpolation - Nearest-Neighbor, Bilinear는 General Interpolation의 특수한 경우입니다. - General Interpolation: x1, x2 사이에 있는 x’의 함숫값 f(x’)를 f(x1, f(x2)를 이용해서 구하는 방법. Interpolation Function(R(x))에 따라 Interpolation Method가 결정됩니다. - f(x’) = R(-λ)f(x1) + R(1 - λ)f(x2). [Nearest-Neighbor Interpolation Function] (-1 ≤ u ≤ 1) [Linear Interpolation Function] (-1 ≤ u ≤ 1) - Cubic Interpol..

10. 1. Data Interpolation - Geometric Transformation: image의 확대/축소, 회전변환 등. - Data Interpolation: 기존에 알려진 데이터 지점을 이용해서, 새로운 데이터 지점을 구성하는 방법. ex) 기존 4개의 값으로, 새로운 8개의 값을 구축하는 방법. 1) Nearest-Neighbor(최근접) Interpolation. 2) Linear Interpolation: 원래의 함수 값을 직선으로 연결하고, 그 직선위의 값을 보간 값으로 할당. - 1), 2) 방법 모두 영상에서 적용할 때는 일직선이 아닌 2차원에서 적용해야 하므로, 먼저 제일 위쪽 행을 적용하고, 그 이후 아래쪽 행을 적용한 뒤, 마지막으로 열을 따라 적..

9. 1. Frequency - Frequency: 영상에서 주파수란 거리에 따라 Gray 값이 변화하는 양. - High Frequency: 일정 거리 내에서 Gray 값의 변화가 큰 특징. ex) Edge, Noise. - Low Frequency: 일정 거리 내에서 Gray 값이 거의 변하지 않는 특징. ex) Background. - Low-Pass Filter: 저주파 성분은 통과시키고, 고주파 성분은 줄이거나 제거. ex) Average Filter. - High-Pass Filter: 고주파 성분은 통과시키고, 저주파 성분은 줄이거나 제거. Filter의 총합은 0이며, 저주파 성분을 0으로 가깝게 만들어 출력시 어두운 영상이 나옵니다. ex) Laplacian Filter..