본문 바로가기

반응형

CS

(24)
[컴퓨터구조] ARM(Advanced RISC Machine) 프로세서 정리 Advanced RISC Machine ? 진보된 RISC 기기 칩의 기본 설계 구조만 만듦 실제 기능 추가 및 최적화 ➡️ 개별 반도체 제조사의 영역 따라서, 물리적 설계는 같아도, 명령어 집합이 가지각색 ➡️ 다양한 제품군 RISC? 등장 배경 : 단순한 명령집합을 가진 프로세서 ➡️ 복잡한 프로세서보다 효율적 (연산 속도가 빠른 것은 아님) Reduced Instruction Set Computing (감소된 명령 집합 컴퓨팅) 작은 명령어 집합을 가짐 명령어의 실행 시간을 최소화하기 위해, 단순하고 일관된 명령어를 사용 단순하고 일관된 명령어 ➡️ 하드웨어 구조를 간단하게 만들 수 있음 ➡️ 높은 처리 속도 복자반 명령어 ➡️ 소프트웨어에서 처리 대표적인 RISC 프로세서 : ARM, MIPS, ..
[컴퓨터구조] 고정 소수점과 부동 소수점 정리 고정 소수점 (Fixed Point) 소수점이 찍힐 위치를 미리 정함 부호(1비트) + 정수부(15비트) + 소수부(16비트) (총 32비트) 장점 단순하다 단점 표현의 범위가 매우 적다 ➡️ 활용하기 힘들다. 부동 소수점 (Floating Point) 현재 대부분의 시스템에서 활용 중 지수 값에 따라 소수점이 움직이는 방식 부호부(1비트) + 지수부(8비트) + 가수부(23비트) (총 32비트) 가수부 : 실제수 (소수점을 2번째 자리까지 밀고 난 후의 오른쪽 부분) 지수부 : 소수점의 위치를 나타내는 지수 -118.625의 부동 소수점 표현 1. 음수이므로, 부호부 = 1 2. 이진수로 변환 : 118.625 = 1110110.101 (2진수) 3. 소수점을 왼쪽으로 이동 : 1.110110101 x..
[JAVA] 제네릭 - Generic 제네릭이란? 자바 5부터 추가된 기능 데이터 형식에 의존하지 않고, 여러 데이터 타입을 가질 수 있도록 데이터의 타입을 일반화 하는 것 제네릭을 사용할 수 있는 곳 클래스, 인터페이스, 메서드 등 제네릭의 장점 데이터 타입을 파라미터화 ➡️ 재사용성 증가 + 타입의 안정성 증가 타입 변환 없이 타입의 안정성을 보장 ➡️ 코드의 가독성 증가 + 유지보수성 증가 예시 //ArrayList public class ArrayList extends AbstractList implements List, RandomAccess, Cloneable, ... { ... } 위 코드의 "" 와 같은 "" 의 형식들 제네릭 타입의 대표적인 약어 의미 = Type = Element = Key = Value = Nu..
[컴퓨터구조] 중앙처리장치(CPU) 정리 중앙처리 장치 = 연산장치 + 제어장치 + 레지스터 (+ 프로그램 카운터 + 제어부 + 내부 버스) CPU의 명령 주기 1. Fetch(인출) : 메모리상의 프로그램 카운터(PC)가 가르키는 명령어를 꺼내와 CPU로 적재 2. Decode(해석) : 인출한 명령어를 해석 / 명령어의 종류와 타겟 등을 판단 3. Execute(실행) : 해석된 명령어에 따라 데이터의 연산을 수행 4. WriteBack(쓰기) : 처리 완료된 데이터를 메모리에 기록 1. 연산장치 산술연산과 논리연산을 수행 ( == 산술논리장치 == ALU ) 연산에 필요한 데이터를 레지스터에 가져오고, 연산 결과를 다시 레지스터에 보냄 2. 제어장치 명령어를 순서대로 실행할 수 있도록 제어하는 장치 RAM에서 프로그램 명령어를 인출/해독 ..
[컴퓨터구조] 용어 별 정리 하드웨어 : 컴퓨터를 구성하는 기계적 장치 (CPU + 기억장치 + 입출력장치) 소프트웨어 : 하드웨어의 동작을 지시하고, 제어하는 명령어 집합 시스템 버스 : 데이터와 명령 제어 신호를 각 장치에 실어나르는 통로 하드웨어들은 시스템 버스로 묶여있다. 데이터 버스 + 주소 버스 + 제어 버스 데이터 버스 : CPU ↔️ 기타 장치(기억장치, I/O장치) / (양방향 버스) 주소 버스 : 데이터를 정확히 실어나르기 위해 기억장치의 주소를 정해주는 버스 / 단방향 버스 제어 버스 : 주소 버스와 데이터 버스는 모든 장치에 공유 ➡️ 제어할 수단이 필요 = 제어 버스 / 양방향 버스 제어 신호 종류 : 읽기/쓰기 , 버스 요청/승인 , 인터럽트 요청/승인 , 클락 , 리셋 등 시스템 소프트웨어 : 운영체제, ..
[컴퓨터구조] 컴퓨터의 흐름 - 프로그램의 흐름 , 데이터의 흐름 , 제어신호의 흐름 1. 프로그램의 흐름 제어/연산 장치 ⬆️ 입력장치 -> 주기억장치 -> 제어장치 ↕️ 보조기억장치 2. 데이터의 흐름 제어/연산 장치 ↕️ 입력장치 ➡️ 주기억장치 ➡️ 출력장치 ↕️ 보조기억장치 3. 제어신호의 흐름 참고: https://gyoogle.dev/blog/computer-science/computer-architecture/%EC%BB%B4%ED%93%A8%ED%84%B0%EC%9D%98%20%EA%B5%AC%EC%84%B1.html
[DB] 1정규화(1NF) 2정규화(2NF) 3정규화(3NF) 간단정리 관계형 데이터 베이스를 사용 -> 정규화 해야함. EX) mysql, oracledb, h2 등... 비관계형 데이터 베이스를 사용 -> 정규화 안함. EX) mongoDB, cassandra, dynamoDB 등... 제 1정규화 - 1 Normal Form 정의 : 최소한 테이블은 관계이며, 중복되는 항목이 없는 테이블. - 한 칸에 한 데이터만 저장 -> 제 1 정규화 만족 1NF 만족 학번 수강목록 1001 수학 1002 영어 1003 과학 1NF 불만족 학번 수강목록 1001 수학 1002 영어 1003 과학, 국어 제 2정규화 - 2 Normal Form patial dependency를 제거한 테이블 - 관련이 없는 테이블은 분리 - 테이블을 최소 단위로 분리 2NF 불만족 예시) 수강신청목..
[AI] 신경망 기초 - pytorch Attributes shape : 형태 dtype (datatype) : 타입 (default = float32) device : 학습에 사용할 자원 (default = cpu) t = torch.zeros(4, 3) print(t) """ tensor([[0., 0., 0.], [0., 0., 0.], [0., 0., 0.]]) """ print(t.shape) """ torch.Size([4, 3]) """ print(t.dtype) """ torch.float32 """ print(t.device) """ cpu """ shape 관련 함수들 unsqueeze : rank 늘리기, 위 예제의 torch.zeros(4, 3)의 rank는 2. torch.zeros(4,4,3)의 rank는 3. 차원을..