묻공러
'분류 전체보기' 카테고리의 글 목록 (45 Page)

분류 전체보기

CS/[널널한 개발자] CS 개론

[컴퓨터 구조 6] HDD, SSD와 파일 시스템

# HDD의 논리적 구조 HDD와 SSD 모두 Track과 Sector로 관리된다 # 조각 모음의 의미 HDD의 경우, 파일이 저장될 때, 일반적으로 Track이 이어지는 경우보다는 끊어져서 관리가 된다 그렇게 되면 하드디스크의 물리적 회전이 계속 요구되고 입출력 성능이 저하됨 따라서 조각 모음을 통해 파일의 Track을 이어지게 해서 입출력 성능을 높임 최근에는 운영체제가 직접 관리해 줌 SSD의 경우, 디스크가 회전하는 것이 아니라 어느 곳이든 칩으로 접근과 관리를 하게 되니 속도가 매우 빠르고 물리적인 회전이 아닌 칩 자체의 읽기, 쓰기의 성능에 따라 입출력 속도가 결정이 된다 따라서 조각 모음도 의미가 없어지게 됨 # 파일이 저장되는 방법 (파일 시스템) - FAT(File Allocation T..

CS/[널널한 개발자] CS 개론

[컴퓨터 구조 5] 컴퓨터가 기억공간을 관리하는 방법

# 기억장치의 종류와 역할 CPU: Register, Cache memory 주기억장치: Cache memory, RAM 보조기억장치:HDD, SSD, USB, Backup device Cache memory: CPU의 연산과정에 따라 필요할 것 같은 데이터를 미리 예측해서 RAM에서 복사해 옴 ex. HDD: 도서관 RAM: 책장 캐시: 책상 레지스터: 읽고 있는 책 CPU(ALU): 사람 # 컴퓨터가 기억공간을 관리하는 방법 레지스터는 개별 기억 공간마다 고유 이름을 부여 주기억장치는 일련번호(메모리 주소)를 통해 보조기억장치는 Track 번호, Sector 번호를 통해 기억공간이 관리된다

CS/[널널한 개발자] CS 개론

[컴퓨터 구조 4] 컴퓨터가 연산하는 과정

# 컴퓨터가 연산하는 과정 CPU: 연산장치(비메모리) RAM: 1차 메모리 HDD, SSD: 2차 메모리 1) RAM과 같은 메모리에서 정보를 가져온다 RAM은 일련번호와 데이터들로 구성되어 있다 32비트 체제에서 관리할 수 있는 메모리 최대 크기는 2^32 = 42.9억 바이트 = 4GB RAM의 일련번호와 데이터를 담는 기준이 1바이트라고 한다면, 최대 42.9억 개의 일련번호와 데이터 바구니가 있다는 뜻 2) 정보를 참조해서 CPU의 Register에 옮겨오고 3) ALU를 통해 산술연산을 실시 4) 그 결과를 RAM에 보내준다

CS/[널널한 개발자] CS 개론

[컴퓨터 구조 3] 컴퓨터가 곱셈과 나눗셈하는 방법

# 컴퓨터가 곱셈하는 방법 왼쪽으로 한칸 씩 비트를 밀어주면 된다 오버플로우 된 것은 버리고 오른쪽 패딩은 0으로 처리한다 ex. 0101 01010 결과: 1010 # 컴퓨터가 나눗셈하는 방법 오른쪽으로 한칸 씩 비트를 밀어주면 된다 오버플로우 된 것은 버리고 왼쪽 패딩은 0으로 처리한다 ex. 0110 00110 결과: 0011 중요) 0으로 나눗셈을 하는 것은 불가능이다

CS/[널널한 개발자] CS 개론

[컴퓨터 구조 2] 컴퓨터가 뺄셈하는 방법

# 컴퓨터가 뺄셈하는 방법 1 6에 4를 더하면 10 즉, 4는 6에 대한 10의 보수이다 ex. 13 - 6 = 7 13에 6에 대한 10의 보수 4를 더하고 10자리에서 1을 빼도 역시 7이다 # 컴퓨터가 뺄셈하는 방법 2 컴퓨터는 뺄셈을 하기위해 2의보수법을 이용한다 1의 보수: 2진수에서 0은 1로, 1은 0으로 뒤집기 2의 보수: 1의 보수 + 1 어떤 숫자에 2의 보수를 더하면 자동으로 2진수 뺄셈이 된다 단, 자리올림은 버린다

CS/[널널한 개발자] CS 개론

[컴퓨터 구조 1] 디지털 회로와 덧셈

# CPU CPU는 사실상 전자식 계산기이다 # 디지털 회로 4가지의 논리를 통해 사칙연산을 구현할 수 있다 # 컴퓨터가 덧셈 하는 방법 1) 반가산기 2) 전가산기

CS/[널널한 개발자] CS 개론

[기초 6] 컴퓨터가 사진을 다루는 방법

# 컴퓨터가 사진을 다루는 방법 1 모니터 화면 상 '점' 하나를 화소(Pixel)이라 한다 여러 점들을 모아 사진을 만들 수 있다 화소 하나를 표현하는데 8비트, 16비트, 24비트, 32비트 정보가 필요할 수 있다 ex. RGBA (여기서 A는 alpha channel(투명도)을 의미) 하나 당 2^8 = 256(0~255) 8비트 총 4개 8비트*4 = 32비트 = 4바이트 # RGB 색상 표현과 픽셀 하지만, 이렇게 한 픽셀 당 32비트를 사용하는 bitmap은 너무 용량을 많이 차지하니 jpg, gif, png 등으로 사용한다 # 컴퓨터가 사진을 다루는 방법 2 위처럼 열과 행 그리고 길이로 저장을 하는 것처럼 압축을 한다

CS/[널널한 개발자] CS 개론

[기초 5] 컴퓨터가 글자를 다루는 방법

# 컴퓨터가 글자를 다루는 방법 1 컴퓨터는 글자가 존재하지 않는다 숫자만 있다 숫자를 글자로 mapping 하는 개념이 등장했고 그러한 규약들을 "코드체계"라고 부름 ex. 십진수 65 컴퓨터에겐 영문 대문자 'A' 16진수로는 0x41 # ASCII ASCII(American Standard Code for Information Interchange)는 미국에서 사용하는 표준 코드체계이다 # 컴퓨터가 글자를 다루는 방법 2 숫자와 글자를 구별하지 않고 정보를 말할 때는 바이너리(Binary)라고 한다 그럼, 결국 바이너리 중 Text가 되는 일부가 있는 형태인 것이다 또한, 공백이나 엔터 등 이러한 모든 것도 문자(숫자)로 나타낸다

CS/[널널한 개발자] CS 개론

[기초 4] 외워야 할 단위 체계와 숫자

# 외워야 할 단위 체계 1 8개 비트를 하나로 묶어 1byte라고 한다 1byte는 영문자 한 글자가 저장될 수 있는 메모리 크기이며 기억 공간의 최소 단위이다 (참고로, 한글의 한 글자를 저장하려면 2바이트가 필요하다) # 외워야 할 단위 체계 2 4비트는 16가지, 8비트는 256가지, 16비트는 65,536가지(64KB)이다 2의 10 제곱은 1024이다 1024가 바이트 단위의 변환이 되는 기준이다 # 컴퓨터 메모리 용량을 말하는 단위 비트란? 최소 표현 단위 바이트란? 기억 공간의 최소 단위 (기억 공간은 1바이트 단위로 관리한다)

CS/[널널한 개발자] CS 개론

[기초 3] 16진수 표기가 사용되는 예

# 16진수 표기가 사용되는 예 - 색상 표현 - 컴퓨터 하드웨어 주소 표현 - 메모리 값 표현 - 색상 표현(RGB) 2^8 = 256 (0~255) RGB 하나를 8비트로 표현 - 색상 표현(CSS) CSS에서도 16진수로 색상을 표기 - 컴퓨터 하드웨어 주소 표현 주소의 개념을 가지고 있는 C언어 메모리를 보면 16진수