Do it! 첫코딩 : 보통 사람이 알아야 할 프로그래밍 기초 with JAVA(정동균 지음)을 읽고
기초적인 부분이 잘 설명되어 있는것 같아서 정리합니다.
-외국어를배우기 어려운 이유는 새로운 언어이기 때문인 것도 있지만, 일상생활에서 외국어를 사용할 일이 별로 없기 때문입니다.
-언어는 사람과 사람 사이에 정보를 전달하기 위한 수단일 뿐이고 머리로는 언어를 생각하지 않습니다.
-컴퓨터는 머릿속에서 bit 단위로 생각을 합니다 (어떤 표현을 써도 컴퓨터는 비트 단위로 생각한다)
-비트는 0 또는 1 중 하나의 정보를 가지는 쪼끄만(bit)정보 단위입니다.
전압을 올리면 1, 내리면 0 입니다.
전원 스위치를 끄고 켜는 것이 0과 1 입니다. 전기가 들어오고, 들어오지 않고, 예/아니오
-여러가지 표현은 각기 다른 비트의 조합을 의미한다고 약속 했습니다.
1학년/2학년/3학년/4학년은 00/01/10/11로 표현할 수 있습니다.
이렇게 약속된 0과 1로 만들어진 부호를 코드라고 부릅니다.
-사람의 언어를 표현하려면? 비트를 8개정도 묶으면 됩니다(미국 기준이며 1바이트(byte = 한입))
전달하고 해석할 때 동일한 코드를 사용하려고 합니다. 동일한 약속을 서로 공유해야 글자가 깨지지 않습니다.
동일한 약속을 서로 공유하지 않고 서로 다른 코드를 사용하면 디코딩 오류가 날 수 있습니다.
-8비트는 256가지약속을, 16비트는 65536가지 약속을 할 수 있습니다.
-모든 언어를 위한 약속이 유니코드(UTF)이며 UTF-16은 16비트(2바이트), UTF-32는 32비트(4바이트, 이모지 포함 가능)
-컴퓨터는 비트 단위로 생각을 합니다. 사람의 언어를 비트로 번역해줄 번역자의 존재는 무엇일까요?
컴퓨터 초기에는 01001100과 같이 계속 비트를 입력해서 컴퓨터에게 말을 걸었습니다(기계어의 사용)
기술이 발전하면서, 사람이 알아볼 수 있는 프로그래밍 언어로 작성하면 이것을 기계어로 번역해서 컴퓨터에게 알려주는 도구가 생겼는데 그것이 바로 컴파일러, 한마디로 번역기 입니다.
-기계어는 빠르고 컴퓨터가 좋아합니다. 정밀한 계산, 빠른 속도를 요구하는 환경에서는 기계어로 코딩을 합니다.
우주로 날려보내는 인공위성에 들어가는 기계의 경우 기계어로 코딩을 합니다.
-스크립트 언어는 한꺼번에 기계어로 번역하지 않고 실행할 때마다 번역해서 코드가 짧고 간단합니다. 예를 들면 파이썬과 자바 스크립트가 있습니다.
-HTML과 같은 마크업 언어는 정보를 전달하기 위한 틀을 제공합니다. 프로그래밍 언어는 컴퓨터가 할 행동을 정의합니다.
-어떤 이야기의 핵심을 짚는다는 것은 맥을 짚는다는 것입니다.프로그래밍 언어의 맥은 속성이고, 프로그래밍 작업 대부분이 속성의 나열입니다.
민영 | 민주 | 민수 | |
키 | 175 | 167 | 172 |
성별 | 여자 | 여자 | 남자 |
머리색 | 분홍 | 파랑 | 회색 |
여기서 키,성별,머리색은 속성 값이고 175,여자,분홍은 속성 값입니다.
대부분의 프로그래밍 언어에서는 점(.)으로 속성을 표현합니다.
강아지 프린스;
프린스.털길이 = "5cm";
프린스.나이 = "7살";
점(.)의 표현은 ~의 라고 볼 수 있습니다.
-ex)동영상.2019년.가족.하은이생일.mp3 (마치 디렉토리의 트리구조와 같다)
-컴퓨터가 코드를 읽을 때 "여기까지가 한줄의 코드야" 라고 이해할 수 있도록 마침표로 세미콜론 기호를 사용합니다.
-K -> 01101011(2) -> 6B(16진법) //0110과 1011을 이렇게 표현한 것
3B, D8과 같은 글자가 보이면 컴퓨터의 기본 단위인 비트를 짧고 간단하게 표현하기 위해서 16진법으로 표현했구나, 하고 이해하면 됩니다.
-컴퓨터의 처리능력은 CPU의 처리능력입니다.
'JAVA > Basic' 카테고리의 다른 글
JAVA 기초 - 3 (0) | 2022.11.03 |
---|---|
JAVA 기초 - 2 (0) | 2022.10.31 |