32bit vs 64bit먼저 32bit CPU와 64bit CPU를 비교할 수 있다. 여기서 bit의 의미는 CPU 레지스터의 크기를 의미한다. CPU는 레지스터를 통해 주소와 값을 불러오고 연산을 처리하기 때문에 이는 CPU가 한 번에 처리할 수 있는 데이터의 크기를 의미한다. 즉 32bit 컴퓨터에서 메모리의 주소의 크기는 32bit(4 Byte)이고 64bit 컴퓨터에서 메모리의 주소의 크기는 64bit (8 Byte)인 것이다. 메모리 주소의 크기는 메모리의 크기와도 밀접한 관련이 있는데 CPU가 32bit이면 주소를 2^32 즉, 0xFFFFFFFF 까지만 표현 가능한데 2^32 = 4 * 10^9 (4GB) 이므로 4GB 이상의 RAM은 가지고 있어도 접근이 불가능하다. 따라서 32bit 컴..
Computer Science
GCC 개요, 빌드? 컴파일?GCC가 컴파일러라는 것은 아는데 GCC가 뭔지에 대해서는 제대로 알아본적이 없는 듯하다.GCC는 GNU Compiler Collection의 약자이다. 즉 GCC는 GNU프로젝트에서 만든 오픈 소스 컴파일러 컬렉션이다. 주로 Problem Solving을 할 때 사용하는 컴파일러가 GCC이고 Visual Studio에서는 Visual C라는 컴파일러를 사용한다. 그래서 Visual Studio에서는 되는 풀이가 문제풀이 사이트에서는 안되는 경우도 있는 것이다. 프로그래머스에서는 Clang이라는 컴파일러를 사용하고 있긴하다. 아래 그림은 백준에서 사용하는 C, C++ 컴파일러 정보이다. 컴파일러는 기본적으로 전처리된 소스 파일을 어셈블리어 파일(*.s)로 컴파일 해주는 역할..
HTTP
URL은 네트워크 상에서 자원이 어디 있는지를 알려주기 위한 규약이다. 브라우저에서 기능을 수행하기 위해 다양한 URL 형식이 존재하는데, 대표적으로 웹 서버에 엑세스하기 위한 http 뿐만아니라 ftp, file, malito, news 등이 존재하며, 쓰는 방법도 대상에 따라 다르다. 모든 URL에는 엑세스 방법을 :앞에 정의한다. 예를 들어, http://naver.com 이나 ftp://ftp.cyber.co.kr:21/dir 과 같이 말이다. 이 때 프로토콜을 제외한 URL = URI 이 사진을 보면 URI, URL 차이를 알 수 있다. URL = 식별자 + 위치 이고 URI = 위치 이다.