분류 전체보기 36

RESTful 웹 서비스 구축

이 가이드에서는 spring을 사용하여 "Hello, World" RESTful 웹 서비스를 만드는 과정을 안내합니다 🔑Table of Contents모델생성인사말 나타내는 자바 클래스 생성리소스 컨트롤러 생성서비스 실행빌드시작스프링부트 RESTful 서비스를 테스트하는 방법궁금한점HTTP GET요청을 수락하는 서비스를 빌드합니다http://localhost:8080/greeting  📌 1. 모델생성목표 = 아래 response 응답받기{ "id" : 1, "content": "Hello, World!"}id : 식별 값으로, 요청 시 자동 증가content : "Hello, {{ name }}!" 텍스트 반환 (default : Hello, wolrd!) 📌 2. 인사말 나타내는 자바..

spring/spring Boot 2024.11.21

4.3 Building a Datapath

🔑Table of ContentsBuilding a DatapathInstruction Fetch📌Building a DatapathDatapath데이터가 흐르는 경로 연산을 위한 데이터든, 그 결과든 어디론가 전달되거나 저장되거나 해야함CPU에서 프로세스 데이터와 주소들의 요소가 전달되는 길레지스터, ALU, MUX, 메모리,...등의 모듈등이 연결되는 통로우리는 MIPS datapath를 순차적으로 만들어볼것임개략도의 디자인을 좀 더 정제할 것📌 Instruction Fetch프로그램 명령어를 저장하고있다가 주소를 주어지면 명령어를 읽어서 보내주는 메모리유닛pc = 현재 명령어 주소를 가지고있는 레지스터덧셈기 (ALU로 쉽게 만들수있음)명령어를 실행하기위해서는 명령어를 가져와야함명령어 실행을 준..

4.2 Logic Design Conventions

🔑Table of ContentsLogic Design BasicsCombinatioanl Elements  - 조합요소Sequential Elements        -순차적요소Clocking Methodology      -클러킹 방법론궁금한점📌Logic Design Basics정보는 binary(0,1)로 인코딩됨저전력 = 0, 고전력 = 1하나의 비트표현마다 한개의 선 필요멀티비트 데이터는 muti-wire bus로 인코딩됨조합요소데이터에 동작함output은 input의 조합state element (상태요소)정보를 저장🔦MIPS를 구현하는 데이터패스 요소조합소자상태소자📌 Combinational Elements(조합소자)데이터 값에 대해 연산을 수행하는 소자, 출력이 현재 입력에 의해서만..

4.1 Introduction

🔑Table of ContentsIntroductionIntroduction ExecutionCPU Overview📌 IntroductionCPU 성능의 요소명령어 개수 → ISA와 컴파일러에 의해 결정CPI(명령어당 사이클 수) 와 CT(클럭사이클 시간) → 프로세서 구현방법에 따 결정MIPS 구현방식을 두가지 형태로 배워볼것간소화 버전그보다는 좀 더 현실적인 pipeline화된 버전구현에 실제 MIPS의 모든 명령어를 사용하진 않고 일부분을 사용할것임메모리참조 : lw, sw산술/논리 : add, sub,and, or, slt제어이동 : beg , j📌 Introduction Execution프로그램에 메모리에 로드되면 명령어들은 명령어 메모리에 순서대로 주소를 가지며 위치함PC를 프로그램이 저..

퀴즈📝

📍1. MIPS에서 곱셈 알고리즘을 이용한 7X5 연산을 수행하는 과정을 적어보시오 반복승수피승수곱001010000 01110000 0000101010000 01110000 011101010000 11100000 011100100000 11100000 0111200100000 11100000 011100100001 11000000 011100010001 11000000 0111300010001 11000010 001100010011 10000010 001100000011 10000010 0011400000011 10000010 001100000111 00000010 001100000111 00000010 0011 📍2. -0.75는 십진수이다. 이 수를 IEEE 754 이진 표현법에 따라 단일정밀도 ..

3.7 실례: x86의 SSE와 AVK

🔑Table of Contentsx86 FP ArchitectureStreaming SIMD Extension 2 (SSE2)📌 x86 FP Architecture8087 FP Coprocessor 기반8개의 80비트 확장 정밀도 레지스터 사용스택구조 사용데이터를 스택에 푸시하고 스택의 상위 두개 요소를 사용해 연산을 수행한 뒤 결과를 스택에 저장레지스터 인덱스 : 스택의 최상단을 기준으로 인덱싱FP 값의 메모리 표현메모리에서 부동소수점 값은 32비트 또는 64비트로 저장된다 메모리에 저장되거나 로드될때 형변환이 이루어진다정수도 부동소수점으로 변환될 수 있다 코드 생성 및 최적화의 어려움FP 성능 저하 (스택 기반으로 코드 생성과 최적화가 어려움, FP 연산 성능이 비교적 낮음)스택기반으로 설계된 x..

3.5 Floating Point

🔑Table of ContentsFloating Point                            - 부동소수점Floating Point Standard            - IEEE이론IEEE Floating-Point Format      - IEEE계산방법,예제Single-Precision Range            - 단정도 범위Double-Precision Range           -배정도 범위Floating-Point Precision            - 부동소수점의 정밀도Floating-Point ExampleDenormal Number                     - 비정규 숫자Infinities and NaNs                    - 무한대와 ..

3.4 Division

🔑Table of ContentsDivisionDivision Hardware (First version)   - 나눗셈알고리즘(초기버전)Optimized Divider (Sequencial version)Left Shift and Subtract Division Hardware궁금한점 📌Divisiondivisor(제수)가 0인지 확인한다긴 나눗셈의 접근법현재까지의 dividend(피제수) 자릿수가 divisor(제수) 자릿수보다 크거나 같으면몫의 현재 비트에 1을 넣고, 피제수에서 제수만큼 뺀다아닐경우몫의 현재 비트에 0을 넣고, 피제수의 비트자리를 한단계 뒤로 추가한다복원(Restoring) division피제수에서 제수만큼 뺐는데 음수가 된다면, 다시 제수를 더해 복원해줘야한다Signed(부호..

3.3 Multiplication

🔑Table of ContentsMultiplication        - 곱셈Multiplication Hardware (First version)Optimized Multiplier ( Sequencial version)  - 최적화된 곱셈기Add and Right Shift Multiplier Hardware     - 4bit 수들의 곱Faster Multiplier     MIPS Multiplication궁금한점📌MultiplicationMultiplicand 왼쪽으로 시프트, Multiplier 오른쪽으로 시프트됨 -> 64비트 ALU(산술 논리 연산장치)를통해 연산된다product의 길이 = Multiplicand와 Multiplier의 길이를 합친 값(32bit * 32bit = 64..

3.2 Addition and Subtraction

🔑Table of ContentsInteger Addition                  - 정수형덧셈Integer Subtraction             - 정수형 뺄셈Dealing with Overflow         - 오버플로우 처리Arithmetic for Multimedia궁금한점 📌Integer Addition정수형 덧셈예시)7(0b111) + 6(0b110) = 13(0b1101)만약 결과가 정수형 표현 가능한 범위를 벗어나면 오버 플로우가 일어난다피연산자가 양의값(+ve)과 음의 값(-ve)인 덧셈에서는 오버플로우가 발생하지 않는다피연산자 2개 모두 양의 값(+ve)라면, 발생 할 수 있다부호비트(MSB)로 1이 넘어가면서 음수화피연산자 2개 모두 음의 값(-ve)이라면, 발..