분류 전체보기

자유글/컴퓨터 구조

[컴퓨터 구조] 4. CPU의 구조와 기능 - 1

CPU의 기본 구조 CPU는 기억장치에 저장되어 있는 프로그램 코드(명령어)들을 실행함으로써 프로그램 수행 CPU의 주요 명령어 구분 명령어 인출 (Instruction Fetch, IF) : 기억장치로부터 명령어를 읽음 명령어 해독(Instruction Decode, ID) : 수행해야 할 동작을 결정하기 위하 여 명령어를 해독 위의 두 기능은 모든 명령어들에 대하여 공통적으로 수행 데이터 인출(Data Fetch, DF) : 명령어 실행을 위하여 데이터가 필요한 경 우에는 기억장치 혹은 I/O 장치로부터 그 데이터를 읽음 데이터 처리(Data Process, DP) : 데이터에 대한 산술적 혹은 논리적 연산을 수행 데이터 저장(Data Store, DS) : 수행한 결과를 저장 위의 기능은 명령어에 ..

자유글/컴퓨터 구조

[컴퓨터 구조] 3. 컴퓨터 구조의 발전 과정

컴퓨터 구조의 발전 과정 컴퓨터의 역사 초기의 계산 도구 계산을 하는 도구로서 가장 간단한 것은 주판 기원전 약 3000년 전 고대 메소포타미아 인들이 가장 먼저 사용했다고 추정 기계식 계산기 톱니바퀴를 이용한 기계식 계산기 : 기어로 연결된 바퀴판들로 덧셈과 뺄셈 수행 (1642년, 파스칼) 1671년 라이프니츠는 이를 개량하여 곱셈과 나눗셈도 가능한 계산기를 발명 이후, 라이프니츠는 기계장치에 더 적합한 진법을 연구해서 17세기 후반에 2진법을 창안 차분 기관(difference engine) : 표에 있는 수들을 자동적으로 산술 연산(덧셈, 뺄셈)하고, 그 결과를 금속 천공기를 거쳐서 프린트하는 최초의 계산 기계를 설계(1823년, 찰스 배비지) 해석기관(analytical engine) : 네 가..

자유글/컴퓨터 구조

[컴퓨터 구조] 2. 시스템의 구성과 정보 표현

1. 시스템의 구성 CPU와 시스템 버스 간의 접속 시스템버스 CPU와 기억 장치 및 입출력 장치 사이에 정보를 교환하는 통로 기본구성 주소 버스(address bus) 데이터 버스(data bus) 제어 버스(control bus) 주소 버스(address bus) CPU가 기억 장치나 입출력장치를 지정하는 주소 정보를 전송하는 신호선들의 집합 단방향(uni-directional)전송 : 주소는 CPU로부터 기억장치 혹은 I/O 장치로 보내지는 정보 주소선의 수는 CPU와 접속될 수 있는 최대 기억장치 용량을 결정 [예] 주소 버스의 비트수 = 12 비트라면, 최대 212= 4K 개의 기억 장소들의 주소를 지정 가능 데이터 버스(Data bus) CPU가 기억 장치나 입출력 장치 사이에 데이터를 전송하..

자유글/컴퓨터 구조

[컴퓨터 구조] 1. 컴퓨터의 기능과 기본 구조

1. 컴퓨터의 기능 프로그램 코드를 정해진 순서대로 수행 데이터를 읽어서(read), 처리(processing)하고, 저장(store)함 기본적인 수행 기능들 프로그램 실행 : CPU가 주기억장치로부터 프로그램 코드를 읽어서 실행 데이터 저장 : 프로그램 실행 결과를 주기억장치에 저장 데이터 이동 : 하드 디스크 같은 보조 기억 장치에 저장되어 있는 명령어와 데이터 블록을 주기억장치로 이동. 데이터 입력 /출력 : 사용자가 키보드나 마우스를 통해 입력하는 명령어나 데이터를 입력하거나 CPU가 처리한 결과를 모니터나 프린터로 출력 제어 : 프로그램에서 정해진 순서에 따라 실행되도록 각종 제어 신호를 발생 필요에 따라서 실행 순서를 변경하도록 조정 2. 컴퓨터의 기본구조 컴퓨터의 기본 구성 하드웨어 : 컴퓨..

UNITY

[유니티] #6 탄막 슈팅 게임 - 닷지 2

# 닷지 플레이어 제작 2 #1 플레이어 스크립트 생성 Player 게임 오브젝트를 조종하는 PlayerController 스크립트를 준비한다. 이 스크립트에서는 사용자의 키보드 입력을 감지해야 하고, 리지드바디를 사용하여 Player 게임 오브젝트를 움직일 수 있어야 한다. 프로젝트 창에서 스크립트를 생성해준다. 스크립트를 생성하고 코드를 아래와 같이 적어주어 기본 세팅을 해주자. #2 사용자 입력 감지 입력을 감지하기 위해, Update() 메서드와 Input 클래스의 입력 감지 메서드가 필요하다. Update() 메서드는 Start() 메서드처럼 특정 시점에 자동으로 실행되는 유니티 이벤트 메서드이다. Update() 메서드는 한 프레임에 한 번, 매 프레임마다 반복 실행된다. 만약 60 FPS로 ..

UNITY

[유니티] #5 탄막 슈팅 게임 - 닷지 1

# 닷지 플레이어 제작 1 #1 씬 구성하기 먼저 프로젝트를 생성하고 플레이어가 움직일 공간을 만들어 줄 거다. 제작할 씬은 정사각형의 공간에 사방이 벽으로 막혀있고, 플레이어가 그 안에서 자유롭게 움직일 수 있어야 한다. 우선 유니티 허브를 실행하고 아래와 같이 새로운 프로젝트를 만들어준다. 그다음 레벨의 바닥과 벽을 만들어 줄 거다. 하이어리키 창에서 Create -> 3D Object -> Plane을 클릭해준다. 그다음 가로와 세로의 길이를 늘려줘야 한다. 인스펙터 창에서 게임 오브젝트의 트랜스폼 컴포넌트의 스케일을 (2, 1, 2)로 변경해준다. 유니티에서 게임 오브젝트의 컬러는 머티리얼이 결정한다. 머티리얼은 셰이더와 텍스처가 합쳐진 에셋으로, 오브젝트의 픽셀 컬러를 결정한다. 프로젝트 창에서..

UNITY

[유니티] #4 게임 오브젝트 제어

# 게임 오브젝트 제어하기 #1 클래스와 오브젝트 클래스와 오브젝트는 객체지향(사람이 현실 세상을 보는 방식)의 핵심이다. 사람은 사물을 분해하여 생각하지 않고, 하나의 온전한 독립체로 여기는 경향이 있다. 예를 들어 사람은 컴퓨터를 보고 cpu, ram 그리고 그래픽과 같은 여러 부품으로 이루어져 있는 집합으로 여기지 않고 컴퓨터라는 온전한 물건으로 본다. 객체지향은 이러한 오브젝트의 집합으로 구성하는 방식이다. #클래스 클래스는 묘사할 대상과 관련된 코드를 묶는 틀이다. 예를 들어 Human 클래스에는 사람의 특징을 규정하는 변수와 메서드가 구현된다. 사람, 동물, 꽃 등 다양한 사물에 관한 코드를 각자의 클래스로 만들어 묶어두면 코드 관리가 쉬워진다. #오브젝트 물건의 설계도인 클래스와 달리 오브젝..

UNITY

[유니티] #3 C# 프로그래밍 시작하기 2

# 유니티에서의 C# 프로그래밍 2 #1 코딩 기본규칙 #주석 주석은 컴퓨터가 처리하지 않는 영역이다. 보통 메모 용도로 사용하며, 코드를 주석으로 바꾸어 잠시 비활성화시키는 용도로도 사용할 수 있다. 한 줄 주석은 /(슬래시)를 두 번 연속 타이핑하고 입력한다. 여러 줄을 주석할 때에는 /*와 */사용하여 시작과 끝을 표시한다. // 보통 메모 용도로 사용하는 한줄 주석 /*여러줄에 걸쳐 주석을 사용할때에는 슬래시와 별을 사용하여 앞뒤로 사용하여 주석처리를 해준다 */ #주석 콘솔에 메시지를 출력할 때는 Debug.Log() 메서드를 사용한다. 문장을 출력하는 경우에는 아래와 같이 문장을 큰따옴표로 묶어준다. Debug.Log("출력 되는 내용"); #세미콜론 코드 한 문장이 끝나면 반드시 세미콜론을 ..

UNITY

[유니티] #2 C# 프로그래밍 시작하기 1

# 유니티에서의 C# 프로그래밍 1 #1 변수 개념 잡기 변수는 값을 저장하는 장소이다. 변수에 저장한 값은 게임 도중 언제든지 접근하고 수정할 수 있다. 변수를 사용하는 이유는 원하는 값을 기억하고 다시 사용하기 위해서이다. 변수를 사용하기 위해서는 변수를 선언해 줘야 한다. int num; 위 코드는 정수 타입의 값을 다루는 'num' 변수를 선언한 것이다. int는 정수(integer)의 약자이다. int num = 10; 위와 같이 'num' 변수에 초기값(10)을 할당해 줄 수도 있다. 나는 변수 이름은 편하게 보기 위해 'num'을 사용한 것이고 각자 사용용도를 생각해서 마음껏 설정해주면 된다. 변수의 타입에는 int 뿐만 아니라 실수를 저장하는 float, 참과 거짓을 저장하는 bool, 문..

바큥
'분류 전체보기' 카테고리의 글 목록 (11 Page)