CS지식 쌓기 34

명령어와 주소 지정방식

명령어 (연산코드(명령어) + 오퍼랜드(데이터)) 오퍼랜드 연산에 사용될 데이터 연산에 사용될 데이터가 사용된 위치 *(주소필드) 오퍼랜드는 0개일 수도, 여러 개 일 수도 있음 연산코드 데이터 전송 move(데이터를 옮겨라), store(메모리에 저장하라) 등등 산술/논리 연산 add, and, or 등등 제어 흐름 변경 jump(특정 주소로 실행순서를 옮겨라) halt(프로그램의 실행을 멈춰라) 등 입출력 제어유효 주소 - 연산에 사용할 데이터가 저장된 위치 위치를 명시하는 이유 - 바로 명시하면 크기가 작지만 메모리 주소를 명시하면 큰 메모리도 불러올 수 있음 명령어 주소 지정 방식 연산에 사용할 데이터가 저장된 위치를 찾는 방법 유효 주소를 찾는 방법 즉시 주소 지정 방식 연산에 사용될 데이터를 ..

CS지식 쌓기 2023.12.29

고급언어, 저급언어

고급언어 개발자가 이해하기 쉽게 만든 언어 저급언어 컴퓨터가 이해하고 실행하는 언어 기계어 - 이진수, 십육진수로 표현 어셈블리어 - 0과 1로 이루어진 기계어를 읽기 편한 상태로 한 번 바꿔준 언어 컴파일 언어 컴파일러를 통해 저급언어로 변환, 목적 코드(저급언어) 생성 한번에 코드를 훑어서 저급언어로 변환 오류가 있으면 실행안됨 인터프리트 언어 한줄씩 읽어 변환 소스코드 전체가 변환될 때까지 기다릴 필요 없음 오류가 있으면 그 직전까지는 실행됨

CS지식 쌓기 2023.12.29

정보단위, 인코딩

비트 : 0과 1 1024씩 묶은 단위는 따로 있다 워드(word) CPU사 한 번에 처리할 수 있는 정보의 크기 단위 하프 워드 : 워드의 절반 크기 풀 워드 : 워드 크기 더블 워드 : 워드의 두 배 크기 이진법 0과 1로 수를 표현하는 방법 숫자가 1을 넘어가는 시점에 자리 올림 음수를 표현하기 위한 방법 - 보수 값의 0과 1을 뒤집고 1 더하기 플래그 레지스터에 양수나 음수를 표시됨 십육진법 숫자가 15를 넘어가는 시점에 자리올림 10부터 A, B, C… 16이 10 / 17이 11 쉬움이진수 → 십육진수 변환 아래와 같이 이진수를 네자리로 나눠서 변환하면 반대로도 문자집합과 인코딩 문자집합 컴퓨터가 이해할 수 있는 문자의 모음 인코딩 코드화하는 과정 문자를 0과 1로 표현된 문자 코드로, 문자..

CS지식 쌓기 2023.12.29

컴퓨터 구조

컴퓨터가 이해하는 정보 데이터 숫자,문자,이미지 등 정적인 정보 컴퓨터와 주고받는/내부에 저장된 정보를 데이터라 통칭 명령어 컴퓨터는 명령어를 처리하는 기계 컴퓨터를 실질적으로 움직이는 정보 데이터는 명령어를 위한 일종의 재료 컴퓨터의 네 가지 핵심 부품 메인보드 - 아래 네가지를 꼽는 곳 CPU 메모리에 저장된 명령어를 읽어 들이고, 해석하고 실행하는 부품 내부구성 ALU(산술논리연산장치) - 계산기 레지스터 - CPU 내부의 작은 저장장치 제어장치 - 제어 신호를 내보내고, 명령어를 해석하는 장치 제어신호 - 컴퓨터 부품들을 관리하고 작동시키기 위한 전기 신호 실행순서 메모리의 명령어를 읽어 들여 레지스터로 가져옴 제어 장치로 보내서 명령어를 해석 ALU에서 계산해서 결과값을 레지스터에 저장 최종적인..

CS지식 쌓기 2023.12.29