본문 바로가기

Lobo's study room/c lang.

(8)
Linux 기본 명령어 및 c 컴파일러 설치하기 $whoami 현재 사용하고 있는 컴퓨터 계정명 확인 가능 $pwd 현재 작업하고 있는 디렉토리 확인 가능 리눅스에서는 c, d드라이브의 개념이 없고 root가 되는 제일 상위의 폴더가 있다. $mkdir makedirectory 폴더 생성 $cd change directory 폴더 이동 Linux에서 고전적으로 많이 사용하던 건 VI 에디터 gedit 사용! $gedit hello.c gedit 프로그램을 통해서 c프로그래밍 가능! 짝대기 3개 -> 기본설정/ 편집기 탭 설정 가능... 탭너비 4 글꼴 및 색 시스템 고정글꼴 해제 및 커스터마이징... $ls 현재 작업하는 directory 안에 있는 파일들을 보여준다. $cc -c hello.c 여기서 hello.c 부분에 작업하고 있는 c 파일명 적..
멀티미디어데이터의 표현 #소리(Sound) 파형형태로 만들어짐. 비트를 많이 쓰면 좀 더 정확한 값을 표현할 수 있다. 점을 많이 찍을수록, 즉 시간축을 좀 더 많은 등분으로 쪼갠다면, 좀 더 정확한 값을 표현할 수 있다. sound의 Hz.. 얼마나 잘게 쪼개서 얼마나 정확한 값을 나타내는냐? #Color RGB Colors 8Bit + 8Bit + 8Bit 각각의 색깔의 값을 0~255까지 표현한다. R이 0이라면 색이 없고 255면 빨간색! 즉, 색의 진하기를 나타낸다. #Image Image는 점들의 집합으로 Pixel화소라고 한다. RGB Color을 사용하는 1024 * 768 이미지의 경우, 3Byte * 1024Byte * 768Byte 만큼 필요하다. = 비트맵 이미지 압축을 시켜서 저장. size를 줄인다. ..
ASC II 코드와 UNI-code #문자(character) ASC II 코드 (American Standard Code for Information Interchange) 미국 표준 코드. 7Bit. 확장 ASC가 8Bit. 0~255까지 코드로 구현해서 쓰는 것. '0' - 48 32 + 16 = 0110000 '1' - 49 32 + 17 = 0110001 ... 'A' - 65 64 + 1 = 01000001 'B' - 66 64 + 2 = 01000010 'C' - 67 64 + 3 = 01000011 ... (대문자 A와 소문자 a의 차이는 32) 'a' - 97 64 + 32 = 01100001 'b' - 98 64 + 33 = 01100010 ... 'D' - 'A' + 'a' 68-65 3+97 100 = 'd' 대문자를..
부동소수점과 정규화 오늘날 대부분의 컴퓨터는 2의 보수를 쓴다. 컴퓨터에서 정수값, 정수식를 표현할때는 수의 표현범위를 생각해주어야 하고, 부족하다면 1)비트를 늘리거나(2배씩) 2)부호를 쓰지 않고 표현할 수 없을지 생각해보자. #부동소수점(Floating Point Num) 1.234 12.34 해수욕장의 부표 Float 정수 부분과 소수점 부분을 쪼개서 저장한다면 정수 2개! 정수 2개를 저장해주는 경우를 생각해보자. 간편하다! 다만... 0.000000000000000001 의 경우에서는 메모리낭비가 심하다. ex) -1.234 = -0.1234 * 10의 1승 -12.34 = -0.1234 * 10의 2승 -123.4 = -0.1234 * 10의 3승 로 모양을 바꿔주는 정규화(Normalizing)! 즉, 부호,..
부호 절대치 표현과 보수 #컴퓨터의 기능적인 정의 사용자가 입력한 정보를 가공해서 사용자에게 유의미한 정보를 보여주는 매체. 즉, 정보처리 기계 자료는 처리가능한 데이터 뿐만 아니라 명령도 같이 생각하자! 순서대로 명령과 데이터를 cpu로 가져와서 처리를한다. 컴퓨터가 사용할 수 있는 데이터에는 비트가 있다! 비트가 하나 늘어나면 정보처리의 개수는 2배가 된다! 8비트는 256 10비트 1024 16비트 65356 32비트 약 42억 1KB = 2의 10승(1024) B 1MB = 1024KB = 1024 * 1024 KB = 2의 10승*2의 10승 B = 2의 20 B 1GB = 2의 30승 B 1TB = 2의 40승 B 피코... SSD는 256, 512... 메모리 크기는 8GB, 16GB... 보조기억장치는 TB 단위...
컴퓨터와 비트 #computer 전자소자를 사용해서 만들어진 전자계산기. 이전에는 톱니바퀴를 사용해서 만들어짐! 전자의 속도는 빛의 속도와 같다. 기계적 계산기에서 전자소자를 사용함으로써 획기적인 기술의 변화가 나타나게 되었다. 최초로 개발된 전자소자는 진공관!(vacuum tube)은 에디슨에 의해 발명되었다. 진공관->트랜지스터->직접회로(Integrated Circuit) 최초의 컴퓨터 애니악 ENIAC은 진공관(약 18000개 사용)을 사용해서 만들었다. 트랜지스터를 올리는 정도에 따라.. very large scale / super very large scale.... 트랜지스터가 나옴에따라 획기적인 기술의 변화가 나타남. 심지어 슈퍼 컴퓨터까지 가능... #이미테이션 게임 영화 중 이미테이션 게임! 배경 2..
Queue, Circular Queue, Linked list #큐 first in, first out #원형 큐. circular queue 나머지 연산 큐. #LInked list 연결(Linked) List vs Array #Array 1 2 3 4 5 6 7 8 9 … 1000 장점 : random access 단점 : 임의위치 삽입. 삭제 #Linked LIst 장점 : 삽입 삭제 o 단점 : 순차접근(sequential access) Struct node* Struct node{ int data; Struct node next; };//자기참조 구조체
C lang. 개발 환경 세팅 # virtual box 설치 https://www.virtualbox.org/ Oracle VM VirtualBox Welcome to VirtualBox.org! News Flash Important May 17th, 2021We're hiring! Looking for a new challenge? We're hiring a VirtualBox senior developer in 3D area (Europe/Russia/India). New November 22nd, 2021VirtualBox 6.1.30 released! Oracle today released a www.virtualbox.org 현재 버전인 6.1 설치하고 컴퓨터 운영체제에 맞는 버전을 다운로드 해줍니다. virtual box는..