2013. 9. 1. 09:35

정보기초 - 언어 번역 프로그램

언어를 번역해주는 프로그램엔 어떤것이 있을까?

 

우리가 C언어든 무슨언어든 소스코딩을 우리언어(영어)로 하죠.

근데 컴퓨터님은 우리가 소스코딩을 한 것을 알아듣지 못한다는 것

결국은 코딩한 소스들을 또 컴퓨터가 진짜 알아들을 수 있는 전기적신호 2진법으로

변역을 최종적으로 해야하는데요.

 그 변역을 해주는 프로그램이 언어 번역 프로그램입니다.

그의 종류는 3개 컴파일러 , 어셈블러 , 인터프리터 가 있습니다.

 

컴파일러

C언어 ,C++,JAVA 등 같은 고급언어가 사용하는 언어 번역 프로그램입니다.

한꺼번에 전체를 번역합니다.

오류검출이 어렵지만 시간은 많이 들지 않습니다.

 

실행 순서

원시프로그램 - 번역 - 목적프로그램 - 링커 - 로드모듈 - 로더 - 실행

우리가 소스코딩만 한 프로그램을 원시프로그램

언어 번역프로그램을 이용해 번역을 한 프로그램을 목적프로그램이라고 합니다.

이런 과정을 거쳐서 하나의 실행할 수 있는 프로그램이 최종적으로

만들어 지는것입니다.

 

어셈블러

어셈블리언어와 같은 저급언어가 사용하는 언어 번역 프로그램입니다.

 

인터프리터

BASIC LISP APL SNOBOL 등과 같은 언어가 사용하는 번역 프로그램입니다.

컴파일러와 어셈블러와는 다르게 원시프로그램 전체를 번역하는것이

아니라 한 줄 한 줄씩 번역하고 실행하고 하는 방식이라 오류검출은 쉽지만

시간이 오래걸린다는 단점이 있습니다.

2013. 8. 31. 15:27

정보기초 - 데이터 표현방법(2)

아스키코드(ASCII CODE)와 유니코드(UNICODE)

우리가 인터넷을 하든 프로그래밍된 프로그램을 보든 직접 코딩을 하든

항상 우리 곁에 있는 문자들이 있습니다.

컴퓨터 어느 곳에나 있는 문자들(영어,한국어,기타등등)은 아스키코드와 유니코드에

의해서 표현이 되는데요.

컴퓨터는 우리가 사용하는 문자 영어나.. 한국어나.. 중국어나.. 여러 나라 문자들을

실제론 알지 못하기때문에 각각의 문자들을 2,8,10,16진법을 이용해 컴퓨터가

알아들을 수 있게 바꾸어 놓은 것들이 아스키코드유니코드입니다.

 

아스키코드 ASCII

(American Standard Code for Information Interchange)

아스키코드는 미국에서 만들어졌으며 미국의 언어 즉 영어특수문자를 사용하기 위해 만들어진

전세계 표준입니다. 우리가 쓰는 영어 모든 알파벳에도 각각의 코드들이 정해져있는데요.

 

위의 표가 아스키코드로 정해진 문자들이고 각각의 문자마다 고유의 코드들을 가지고 있습니다.

 

유니코드 UNICODE

아스키코드가 있는데 왜 또 유니코드를 만들었을까?에 대한 답변은

단순히 컴퓨터를 영어로만 사용하는 데에는 다른 언어를 쓰는 사람들에겐 무리가 될 수 있었습니다.

아스키코드 표준만 있었다면 지금까지 우린 영어로만 의사소통,검색,메신저사용을 했을 것 입니다.

그 문제의 해결 방안으로 전 세계 나라의 언어 표준을 만들어 영어를 사용하지 않는 나라들로 하여금

좀 더 편하게 사용할 수 있게 표준을 정한 것이 유니코드입니다.

 

저 표준 코드들을 전부 외울 필욘 없습니다.

필요하다면 저 표를 보고 찾으면 되기때문에 그냥 지금은 이름,만들어진 이유,용도 정도만

알아두시면 될 거 같습니다.

유니코드는 검색을 통해서 많은 정보를 얻으실 수 있습니다 ^^ 

2013. 8. 28. 00:23

정보기초 - 데이터 표현방법(1)

어떻게 데이터를 표현할까?

우리들은 계산이든 표현이든 결과값이든 모든 것을 0~9까지 10개의 숫자로

표현을 다 해냅니다.

그런데 컴퓨터는 우리들처럼 손가락이 10개도 아니고 생각하는 생물체가 아니기 때문에

오직 컴퓨터가 아는 것이라면

(전류가 들어오는 상태) 1(전류가 없는 상태) 0 이 두 개의 숫자 밖에 

알지 못한다고 하는데 그런 컴퓨터는 신기하게도 0과 1로만으로 사칙연산은 물론이고

이 모든 데이터 표현을 다 할 수 있습니다.

 

비트바이트

비트는 컴퓨터가 나타내는 데이터 중 가장 최소의 단위인데 1아님 0만 담을수 있는 데이터입니다.

그것들이 8개가 모이면 그 묶음이 바이트가 됩니다.

 

사용하는 진법의 종류

2진법

0~1 2개의 숫자를 사용

컴퓨터가 유일하게 알아들을 수 있는 진법

8진법

0~7 8개의 숫자를 사용

10진법

0~9 10개의 숫자를 사용

우리들이 쓰고있는 대표적인 진법

16진법

0~F 16개의 숫자를 사용

메모리나 어셈블리어나 등등 장치에서 씀

 

 2진수

8진수 

10진수 

16진수 

 10

11 

 3

 100

 4

 4

 4

 101

 5

 5

 5

 110

 6

 6

 6

 111

 7

 7

 7

 1000

 10

 8

 8

 1001

 11

 9

 9

 1010

 12

 10

 A

 1011

 13

11

 B

 1100

 14

 12

 C

 1101

 15

 13

 D

 1110

 16

 14

 E

 1111

 17

 15

 F

각자 진법마다 끝에 다다르면 올림이 발생합니다.

첫째자리는 다시 0 이 되고 둘째자리부터 1 씩 올림이 됩니다.

 

죄송합니다 설명이 빈약하고 이상할수도 있습니다.

어디서부터 설명해야할지 몰라서..

2013. 8. 27. 19:39

컴퓨터구조 - CPU(중앙처리장치)

CPU 란?

 

컴퓨터 시스템 전체를 제어하는 장치입니다.

산술 , 논리 연산 장치와 제어 장치, 레지스터로 구성되어 있어

컴퓨터의 모든 행동과 제어,연산은 CPU에서 도맡아 하죠.

 

* 산술 . 논리 연산장치(ALU)

└ 사칙연산을 수행하는 산술연산과 참과 거짓을 판별하는 논리연산을 수행.

* 제어 장치

CPU 내부에서 일어나는 모든 작업을 통제하고 관리

적절한 순서로 명령을 꺼내고 명령을 해석하여 그 해석에 따라

컴퓨터 시스템의 적절한 부분으로 제어 신호를 전달합니다.

* 레지스터

CPU에서 사용하고 내장되있는 기억(저장)장치입니다.

 

이로써 컴퓨터 내부의 기억장치를 모두 소개 했습니다.

모든 기억장치의 비교

속도                    종류                    저장공간

High         [레지스터(Register)]           Low

↑        [캐시기억장치]                ↓

↑        [주기억장치]                   ↓

Low          [보조기억장치]                  High

 

 

2013. 8. 25. 16:03

컴퓨터구조 - 기억장치의 종류

기억치에도 종류가?

퓨터 5대 장치들 중 하나인 기억장치는 여러가지 세분장치가 있습니다.

기억장치를 세분류로 보기쉽게(?) 나누어 보았습니다~

 

①캐시메모리

자주쓰는 메모리들을 임시로 저장하여 필요할때마다 바로 꺼내쓰는 장치

 

②주기억장치

소프트웨어와 CPU 사이를 연결시켜주는 가장 중요한 작업 공간 역활

주기억장치에는 RAMROM이 있습니다.

 

ROM = 읽기 전용 / 비휘발성 메모리

종류

 특징

 Mask ROM

 제조시 기억한것으로 삭제 불가

 PROM

 사용자가 단 한 번만 기록 가능

 EPROM

 자외선을 이용해 기존 데이터 삭제여러번 기록 가능

 EEPROM

 전기적 신호를 이용해 기존 데이터 삭제 없이 여러번 기록 가능

 EAROM

 전기적 가변롬. 모두 지우지 않고 선택적 변경 가능

 Flash EEPROM(플래시 메모리)

 비휘발성읽고 쓰기 가능

* 비휘발성 메모리 : 전력(전원)이 나가도 저장되 있던 메모리는 없어지지 않습니다..

 

 

RAM = 읽기 쓰기 가능 / 휘발성 메모리

 종류/특징

 재충전

속도 

전기소모 

저장용량 

가격 

용도 

DRAM

필요 

느리다 

적다 

크다 

싸다 

메인메모리 

SRAM 

불필요 

빠르다 

많다 

작다 

비싸다 

캐시메모리 

* 휘발성 메모리 : 전력(전원)이 나갈 경우 저장되 있던 메모리들은 전부 사라집니다.

 

대충 RAM ROM 의 특징만 보면 될거같아요 ㅋㅋㅋ

 

③보조기억장치

비휘발성 장치,  현재 사용하지 않는 프로그램을 저장하는 역활입니당

 종류

 특징

 자기드럼

 자성체를 입힌 원통을 한쪽 방향으로 회전시키고 그주위에 자기 헤드로 판독기록

 자기코어

 도넛 모양의 링에 자성물질을 입힌것 파괴메모리(자료를 읽으면 데이터 손실)

 자기디스크

 둥근원형에 자성물질을 입혀 회전시켜 기록 판독(하드디스크,플로피디스크,CD)

 광디스크

 금속표면에 미세한 빛을 사용 정보 기록판독

 자기테이프

 플라스틱 테이프표면에 자성 물질을 입힌것 

복잡하죠? ㅋㅋ

자기디스크만 보면될거에요

 

 

 

외우기나 이해하기 힘드시다면 실제 컴퓨터의 동작에 비교하여 공부하시면 좋아요~

예를 들면 컴퓨터 부팅 후 여러작업을 하다가 갑자기 컴퓨터 전원이 나가버리고

다시 부팅을 하면 전 작업들이 모두 날아가있잖아요?? 그게 RAM 의 특징이에요 ㅋ

글구 우리가 게임같은것들을 하드디스크에 다운받는것도 항상 쓰는건아니지만

그때그때 가져와 쓰려고 저장해놓은 거잖아요?? 이런식으로 이해하시면 쉬워요 ^^

 

 

 

 

2013. 8. 25. 13:23

컴퓨터구조 - 하드웨어 5대 장치

하드웨어 5대 장치?

드웨어들 중엔 각각의 맡은 목표,하는일들이 있는데요.

하드웨어를 우리 신체로 비유하고 소프트웨어는 정신,마음으로 비유한다면

우리 신체 부위별로 눈은 보는것 귀는 듣는것 코는 맡는것 입은 먹는것 등등 모두 각자 할 일들이 있듯이

 컴퓨터도 마찬가지 입니다.

그 할 일 중 대표적인 5개의 목표로 나눈 것이 5대 장치 인데요. 

 제어 장치

먼저 제어 장치는 말그대로 컴퓨터를 제어 통제 할 수 있는 장치를 말하는데요.

컴퓨터가 1+1을 계산을 할 때엔 제어장치에서 먼저 신호를 받고 연산장치에게 

"야 1+1 계산해" 라고 명령을 주어 제어를 해주는 대충 사람의 부위로 치면 뇌에 해당하는

부분입니다.

 

기억 장치

말그대로 기억을 해주는 장치를 말합니다.

그종류에는 주기억장치 , 보조기억장치가 있는데요. 다음 강좌때 설명 드리겠습니다.

장치는 RAM , 하드디스크 등이 있습니다.

 

입력 장치

입력장치는 컴퓨터에게 입력신호를 주는 장치입니다.

장치로는 마우스,키보드,스케너 등 사람이 컴퓨터 내부로 입력을 할 수 있게

도와주는 하드웨어를 말합니다.

 

출력 장치

입력관 반대로 컴퓨터가 사람에게 보여주거나 출력하고 결과물을 빼내 우리에게 보여주는

장치입니다.

장치로는 모니터 , 프린터기 등이 있습니다.

 

연산 장치

컴퓨터 내부의 계산기같은 존재로 산술 논리연산 을 합니다.

대표적인 장치가 CPU 가 있는데요. 다음 시간에 설명드리겠습니다. 

2013. 8. 25. 12:59

컴퓨터구조 - 하드/소프트웨어

하드웨어? 소프트웨어?

퓨터를 크게 두 분류로 나눈다면

하드웨어소프트웨어로 나눌 수 있습니다.

 

하드웨어

하드(Hard) : 단단한,굳은,딱딱한 ....

말그대로 단단하고 만질 수 있으면서 컴퓨터와 통신을 하는 장치라고 할 수 있습니다.

예를들어 여러분이 지금 보고 만질 수 있는 모니터.. 만지고계시는 키보드,마우스.. 

프린터기 , 스캐너 , 마이크 , 하드디스크 등등이 있습니다.

* 그냥 만질수만 있다면 다 하드웨어라고 보시면 됩니다.

 

소프트웨어

소프트(Soft) : 부드러운,푹신한 ....

하드웨어와는 뜻이 반대로 만질 수 없으면서 컴퓨터를 동작시키는 명령어의 집합인

프로그램과 같은 의미로 쓰입니다.

대표적인 예론 OS(운영체제) ,한글시리즈,MSOffice,데몬 등등 수많은 유틸리티나 프로그램 등이

소프트웨어로 불립니다. 

 

누구나 다 알고 당연한 것을 굳이 이렇게 다시 강좌로 올릴 필요가 있냐

하시는 분들도 계시지만 뭐든 많은걸 알기 위해선

기초가 가장 중요하단 사실도 잊지않으셨으면 합니다.

복습겸 다시 되새겨보시는것도 나쁜 방법은 아닙니다.