티스토리 뷰

😊[1일 1로그 100일 완성 IT지식] 책을 기반으로 study한 내용을 정리합니다. 

 

1부 요약- 컴퓨터 하드웨어에 관해 설명, 하드웨어가 만들어지는 방식같은 물리적 세부 사항보다는 컴퓨팅 시스템의 논리적 아키텍처에 초점 

  1. 컴퓨터의 구조와 구성 요소 개괄적 설명
  2. 컴퓨터가 어떻게 비트, 바이트, 이진수로 정보를 표현할까?
  3. 컴퓨터가 실제로 계산을 어떻게 수행할까? (어떤 일을 수행하기 위해 비트와 바이트를 어떻게 처리하는 지 살펴보기)

하드웨어 chapter7: 연속과 불연속

어떤 단위의 기수가 2라면 그 단위는 이진 숫자, 더 줄여서 비트(bit, binary digit)라고 할 수 있는데, 이는 존 투키(John Tukey)가 제안한 단어이다.

 

컴퓨터가 정보를 표현하는 방식은 세 가지 기본 아이디어를 바탕으로 한다. 

디지털 시스템에서 다루는 값의 '불연속성'을 흩어져 있다는 뜻의 '이산적(discrete)'이라고도 표현한다. 디지털 신호는 연속적인 아날로그 신호를 시간 단위로 쪼개어 불연속적인 신호로 변환한 것<-> 아날로그 시스템은 연속적(continuous)인 값을 다룬다. 
  1. 컴퓨터는 디지털 처리장치다. 불연속적인 덩어리로 입력받고, 불연속적인 값을 갖는 정보를 저장하고 처리한다. 디지털 정보는 기본적으로 수에 불과하다. 반면, 아날로그 정보는 연속적으로 변하는 값을 뜻한다. 
  2. 컴퓨터는 정보를 비트로 표현한다.
    • "비트(bit) = 이진 숫자" 로 사람들이 쓰는 10진수가 아닌 비트(이진 숫자, 0 또는 1)로 표현된다. 
    • 더 쉽게 말하자면 비트는 이진 숫자( 0 , 1)에서 각각의 0 과 1을 의미한다. 하나의 비트는 0이나 1을 값으로 가질 수 있고 1은 참, 0은 거짓으로 서로 배타적인 상태를 나타낸다. 
  3. 비트가 모여서 더 큰 정보를 표현한다. -> 숫자, 문자, 단어, 이름, 소리 사진, 영화부터 더 큰 정보를 처리하는 프로그램을 구성하는 명령어까지 모두 비트가 모여 표현된 것이다. 

 

🍕아날로그와 디지털 

아날로그와 디지털은 세상에 있는 정보를 표현하는 방식 중 하나를 말한다.

  • 둘의 차이점은 신호 처리 방식에서 나타난다. 음성 송수신의 경우, 아날로그 방식은 목소리의 진동에 해당되는 전기 신호로 전달한다. 그러나 디지털 방식은 송신기로 받은 전기 아날로그 신호들이 교환대의 전기 회선 내에서 2진법 숫자들로 바뀌어 부호 형태로 전달한다. (디지털 방식이 아날로그를 모태로 2진법 형태로 변환한 것을 전달)
  • 디지털은 0과 1의 수많은 조합에 의해 다양한 신호 전달 체계를 갖는 데 비해 아날로그 방식은 자연 그대로의 진동, 파동 또는 기계적 동력에 상응하는 신호 체계를 만든다.

[네이버 지식백과] 디지털과 아날로그의 만남 (통합논술 개념어 사전, 2007. 12. 15., 한림학사)

불빛을 예시로 들면 디지털에서는 불빛이 켜져있다(1). 꺼져있다(0) 두 가지 방식으로 명확하게 표현 

반면, 아날로그는 불빛이 완전히 없는 상태로부터 완벽하게 밝아지는 모든 단계를 연속적으로 표현한다. 

세상은 아날로그로 이루어져있기 때문에 디지털 표현만으로 표현할 수 없다.  

 

✅아날로그

어원: analogue란 "유사성이 있는"이란 뜻이다. 다른 어떤 것이 변함에 따라 연속적으로 변하는 값이라는 개념을 전달(어떤 것을 변화시키면 한 값이 조금 변할 때, 다른 값도 조금 변하게 된다. 변화가 있으면 정비례해서 값이 변함 => "모든 것이 연속으로 이어진다", 아날로그는 중간상태가 있다.

  • 아날로그는 자연적인 것들을 포함한다. 빛, 소리, 바람, 물결, 전파 등 인간이 있기 전부터 있던 것들 e.g.) 해가 뜨고 지는 것처럼 연속적으로 이어지는 것들
  • 어떤 양 또는 데이터를 연속적으로 변환하는 물리량(전압, 전류 등)으로 표현하는 것 -> 즉 아날로그는 곡선의 형태로 정보를 전달한다. e.g.) 아날로그 신호는 전류의 주파수나 진폭 등 연속적으로 변화하는 형태로 전류를 전달

장점:

  • 시계나 속도계, 수은 온도계 같은 아날로그 장치는 값을 한번에 이해하기 쉽다.
  • 데이터 보존에 있어서 디지털 형태보다 뛰어나다. (e.g. 석판, 종이, 점토판, 필름) --? 이 부분에 대해서 논의

디지털 

어원: digital 이란 '손가락의'라는 뜻이다. 손가락이란 표현은 '하나, 둘...세는 것'이라고 이해하면 쉽다.

우리가 손가락으로 하나, 둘 하고 셀 수는 있지만 손가락 한 개 반같은 것을 셀 수 없다. (중간 상태가 없다.) 0이나 1같은 수치로만 표현할 수 있는 것이 디지털이다. 어떤 값이 변화하면 다른 값은 아예 변하지 않거나 중간 단계없이 다른 값으로 변한다. 

  • 디지털은 자연 현상에 있는 것이 아니라 컴퓨터 같은 전자기기에 사용하기 위해서 만들어낸 신호이다. 인간이 인공적으로 정보를 나누어 수집한 것을 말한다.
  • 어떤 양 또는 데이터를 2진수로 표현한 것 -> 디지털은 1과 0이라는 숫자를 통해 정보를 전달하는 것 e.g.) 디지털 신호는 전류가 흐르는 상태(1)와 흐르지 않는 상태(0)의 2가지를 조합하여 전달한다. 
  • 디지털 표현 방식에서는 아날로그의 연속적인 데이터를 모두 분절하여 0과 1로 명확히 표현하도록 하고 있음

아날로그 시계와 디지털 시계를 예시로 들면, 같은 시계라도 바늘로 된 아날로그 시계는 시계바늘이 '연속해서' 움직이는 것에 따라 시간이 인식되므로 아날로그 시계라 부른다. 그렇기 때문에 아날로그 시계는 4분과 5분 사이에 시계바늘이 있을 수 있지만 디지털 시계는 "숫자"의 단위가 변함에 따라 시간을 인식할 수 있으므로 4분과 5분 사이에 있을 수 없다(불연속성). 

 

장점:

  • 컴퓨터 입장에서는 디지털 데이터가 다루기 쉽다. 
  • 디지털 데이터는 출처와 무관하게 다양한 방식으로 저장, 전송, 처리될 수 있음
  • 디지털 정보는 압축될 수 있어 네트워크를 통해 전송할 때 효과적이다 .
  • 다른 데이터와 병합, 복사, 인터넷을 통해 데이터 전송이 자유로움 다양한 장치에 저장될 수 있다. 기능 확장에 있어서도 아날로그보다 쉽다(e.g. 디지털 시계의 초단위를 세분화해서 표시하는 기능을 아날로그 시계에 표시하려면 훨씬 어렵다). 

 

우리는 아날로그 세상에 살고있는데 왜 디지털 표현방식이 생겼을까? 

컴퓨터와 기기의 발달로 인해 기기에게 명확한 명령을 내리고 기기가 동작을 수행하기 위해 디지털 표현이 필요하게 된것이다. 기계와 소통하기 위해 일상적인 아날로그 신호를 디지털 신호(0,1의 2진법 전기적 신호로 변환)로 바꾸어 표현한다.  e.g) 가령 냉장고에게 음식을 보관해 달라고 명령을 내렸을 때, 아날로그적 표현으로 '적당히 음식이 상하지 않게 보관해줘' 라는 것은 불가능하기 때문입니다. -> 기계가 작동하려면 명확한 명령이 필요하다.  


🍕아날로그 정보를 디지털로 바꾸기  

이미지 디지털화하기

 

아날로그 카메라는 화학 물질을 입힌 플라스크 필름에 있는 감광영역을 피사체에서 오는 빛에 노출하여 영상을 만들어 낸다. 영역마다 서로 다른 색의 빛을 다른 양으로 받아들이고, 받아들인 빛은 필름 내 염료에 영향을 미친다. 그 다음 필름은 화학 처리 단계를 거쳐 종이 위에 현상되고 인화된다. 색상은 착색 염료의 양에 따라 다르게 표시된다. 

디지털 카메라에서는 렌즈가 적, 녹, 청색 필터 뒤에 놓인 미세한 광검출 소자의 직사각형 배열에 영상의 초점을 맞춘다. 각 검출 소자*는 소자에 들어오는 빛의 양에 비례하는 양으로 전하를 저장한다. 저장된 전하는 수치로 변환된다. 사진의 디지털 표현은 계산되어 빛의 강도를 나타내는 수를 배열한 것이다. 

소자(element) - 전기 회로, 자성 재료, 반도체 장치, 안테나 등에서 널리 이용되는 주요 구성 요소의 하나.
전기 회로에서는 코일, 콘덴서, 저항체를, 자성 재료에서는 페라이트 등을 사용한 자심을, 반도체 장치에서는 트랜지스터, 다이오드, 서미스터 등을 말한다. 

[네이버 지식백과] 소자 [element, 素子, そし] (IT용어사전, 한국정보통신기술협회)

센서 배열의 각 요소는 적, 녹, 청 빛의 양을 측정하는 세 개의 검출 소자로 구성된다. 각 요소는 화소(picture element)라는 뜻에서 픽셀(pixel)이라고 한다. 이 픽셀은 적,녹,청색의 강도를 기록한 세 개의 값으로 표현된다. 

픽셀(pixel)은 화소와 같은 말로 이미지를 구성하는 최소 단위를 뜻한다.

 

음향 디지털화하기 

아날로그 소리 예시. 바이닐 레코드(축음기 음반), 카세트 테이프

소리의 근원인 음원에서 발생한 진동이 공기에 압력 변화를 일으켜 파동의 형태로 전파되어 고막을 진동시키면서 신경활 동으로 변환되는데 이것을 뇌에서 소리로 받아들인다. 축음기는 이러한 기압 변동을 왁스 실린더에 있는 가느다란 홈의 패턴으로 변환했고 이 패턴을 이용해서 기압 변동을 재현했다. (소리 -> 홈의 패턴으로 변환하는 과정 '녹음' / 패턴-> 기압 변동으로 변환하는 과정 '재생') 즉, 기압은 물리적인 방법을 통해 표현된다. 

축음기 , 간단히 레코드라고 부름

 

아날로그 신호 즉, 해당 예시에서 소리의 파형을 시각화하면 1번처럼 곡선의 모형을 띄는데 이것을 일정한 시간의 간격으로 측정한다고 했을 때 곡선 값에 가까운 일련의 수치가 된다. 이 과정을 자주, 정밀하게 측정할수록 근사치는 더욱 정확해진다. 

Analog-to-digital converter(ADC 과정)

위와 같은 과정의 결과물인 일련의 수가 파형의 디지털 표현이다. 

파형에서 수로 전환하는 과정이 아날로그에서 디지털로의 변환 과정이며, 변환을 수행하는 장치를 A/D 변환기라고 한다. 반대 방향(디지털->아날로그)의 변환은 D/A변환이라고 부른다. 변환의 과정은 완벽하지 않으며 과정 중에서 데이터 소실이 일어나기도 한다.

 

ADC (Analog-to-digital converter)

-ADC과정은 크게 표본화(Sampling), 양자화(Quantization), 부호화(Coding)으로 나뉜다.

  • 표본화(Sampling) : 원래의 아날로그 신호를 일정한 간격으로 샘플링하는 과정
  • 양자화(Quantization) : 아날로그 데이터를 수치화할 수 있는 값으로 근사하여 점으로 표현하는 것
  • 부호화(Coding : 아날로그 신호의 근사치를 이진수의 형태로 회로가 읽고 저장할 수 있도록 변환하는 것

 

소리와 영상의 경우 우리가 인지하지 못하는 양을 담고있기 때문에 압축이 가능하다. 아날로그에서 디지털로의 압축은 쉽지만 역으로는 불가능하진 않지만 극히 어렵다. 압축기술의 대표적인 예시로 사진의 JPEG으로 해당 표준을 정의한 단체 Joint Photographic Experts Group의 이름을 딴 것이다. 동영상의 경우는 MPEG(Moving picture Experts Group)가 있다. 

 

텍스트 디지털화하기 

텍스트의 경우는 추가적인 변환과정 없이 디지털로 어떻게 표현할지 합의하기만 하면 되므로 디지털 변환이 쉽다. 각 문자마다 고유 번호를 부여하는 방식이 될 수 있다. 이러한 방식을 사용한 대표적인 예시가 아스키코드(ASCII)이다. 

 

ASCII(American Standard Code for Informaton Interchange) 

-아스키코드

-1963년 표준화

-다양한 방법으로 문자를 표현했으나 호환 등의 여러문제가 발생했다. 이를 해결하기 위해 ANSI(American National Standards Institute, 미국 규격 협회)에서 제시한 표준 코드 체계

-각 문자를 7비트로 표현하므로 총 128(= 27)개의 문자를 표현할 수 있다.

 

7비트로 128가지를 달리 표현할 수 있다.

 

아스키 코드 부분

 

❗한계: ASCII는 각 나라별 언어로 표현할 수 없기 때문에 이 문제를 해결하기 위해 유니코드를 사용함 

 

 

각 지역 또는 언어권마다 많은 문자 집합 표준이 있지만, 전세계적으로는 유니코드(Unicode)라는 단일 표준으로 수렴

유니코드는 모든 언어에 있는 모든 문자에 고유한 숫자 값을 지정한다. 모든 문자에 고유값을 지정하기 때문에 체계적이지 않고 방대해졌다. 

각 나라별 언어를 모두 표현하기 위해 나온 코드 체계가 유니코드(unicode)다. 유니코드는 사용중인 운영체제, 프로그램, 언어에 관계없이 문자마다 고유한 코드 값을 제공하는 새로운 개념의 코드다. 언어와 상관없이 모든 문자를 16비트로 표현하므로 최대 65,536자를 표현할 수 있다.

[네이버 지식백과] 유니코드 (컴퓨터 개론, 2013. 3. 10., 김종훈, 김종진)

 

 

+추가내용) 아스키코드는 확장아스키 코드가 있습니다. (자세한 내용은 아래 블로그를 참고)

https://developer-p.tistory.com/72

 

아스키코드(ASCII)와 확장아스키코드(Extended ASCII)에 대하여

아스키코드는 American Standard Code for Information Interchange의 약자로서, ASCII라고 불립니다. 또한 ANSI에서 만든 표준 코드체계입니다. 아스키는 각 문자를 7비트로 표현합니다. 따라서 2^7 = 128개의 문..

developer-p.tistory.com

 


참고자료: https://t-m.kostech.net/theory/?q=YToxOntzOjEyOiJrZXl3b3JkX3R5cGUiO3M6MzoiYWxsIjt9&bmode=view&idx=6209547&t=board

댓글