<컴퓨터 구성>
1. 중앙처리장치(cpu)
- 산술/논리 연산(ALU)
- 흐름 제어(CU)
2. 주기억장치(memory)
-임시 저장소(Registor)
3. 다양한 입/출력 장치(HDD/ODD/... )
- 데이터 소스/ 영구 저장소
*입출력 장치의 조합에 따라 컴퓨터 종류/용도 달라진다. (우리는 폰노이만식 컴퓨터 사용 중)
*64bit cpu사용 = 64개의 스위치를 이용해서 조작
<Code>
- Code = 0과 1로 만든 약속
- 암호,부호
- bit로 표현(2진법)
<탱크코드로 이동하는 것 코딩해보기 >
<Byte>
영어를 모두 표현할 수 있는 최소한의 크기 : 바이트(Byte)
- 1byte = 영어 1글자
- 아스키코드( ASCII Code ) : 미국 표준 코드(8bit로 표현)
아스키코드에서 'A'는 65, 'B'는 66, 'a'는 97, 'b'는 98 등으로 표현. 특수문자 중에서 공백(space)은 32로 표현.
→ cmd에서 alt키 누른 상태에서 65누르면 해당 문자 나옴
- 유니코드 : 요새 많이 사용되는 코드, 전 세계 언어들 표현 가능하도록(16bit로 표현)
- 인코딩(Encoding) : 사람 언어 → 컴퓨터 언어
- 디코딩(Decoding) : 컴퓨터 언어 → 사람 언어
- 인코딩, 디코딩 해주는 번역기 = 컴파일러(Compiler)
- 컴파일러(Compiler) : 프로그래밍 언어로 작성된 원시 코드(source code)를 다른 프로그래밍 언어로 변환하는 프로그램
→ 고수준 언어로 작성된 프로그램을 특정 CPU의 기계어로 번역
- 프로그래밍 언어 : 사람 언어를 기계어로 '번역'해서 컴퓨터에게 알려주는 도구
→ 각 cpu 마다 서로의 기계어가 다름. 적용되는 어셈블리어가 따로 있음. 따라서, 컴파일 과정을 거쳐야함.
- 기계어 > 어셈블리어 > 하이레벨 언어(c언어, java언어, python언어 등등)
<문제 해결 방법론>
- 폴야의 문제 해결 과정(Polya's Problem Solving Steps)
- 문제 해결 4단계
- 주어진 문제의 이해
- 문제를 풀기 위한 구체적 방법 → 알고리즘(Algorithm)
- 찾은 방법에 따라 실현 → 프로그램
- 신뢰성 검증
<알고리즘>
- 알고리즘은 모호하지 않은 일련의 절차나 명령의 집합
- 알고리즘의 모든 절차는 컴퓨터에 의해 수행 가능
- 알고리즘은 반드시 종결하는 절차
- 알고리즘의 실현
- '잘 정의된 기본 절차'들 이용
- 잘 정의된 기본 절차는 어떤 시스템을 만드는 '빌딩 블록'
- 기본 절차 : 소프트웨어 개발에서 기본 절차는 '프로그래밍 언어'
728x90
'컴퓨터 이론' 카테고리의 다른 글
요청(Request)과 응답(Response) (2) | 2023.11.29 |
---|