Computer Science/Computer Architecture
[컴퓨터 구조] 기본 컴퓨터 프로그래밍
[컴퓨터 구조] 기본 컴퓨터 프로그래밍
2022.10.09이제 설계한 컴퓨터가 제대로 작동하는지 증명해보자. 프로그램은 컴퓨터가 특정 업무를 처리하도록 작성된 명령어 또는 문장이고, 네 가지 종류가 있다. 1. 이진 코드 : 메모리상에 실제로 나타나는 형태의 명령어이다. 2. 8진 / 16진 코드 : 이진 코드로 작성 시 매우 많은 자릿수가 필요하기에 8진수 혹은 16진수를 사용해 자릿수를 감소시킨다. 3. 기호 코드 : 어셈블리 언어로, 각 명령어를 기호화된 이름으로 표현한다. 4. 고급 프로그래밍 언어 : C, Fortran 등.. 모든 컴퓨터는 각각의 어셈블리 언어를 가지고 있으며, 언어의 규칙은 컴퓨터 제조업체에서 정한다. 어셈블리 언어는 줄 단위로 해석된다. (Carriage-Return을 한 줄의 끝으로 간주한다) 이제 기본 컴퓨터의 어셈블리 언어를..
[컴퓨터 구조] 기본 컴퓨터의 구조와 설계
[컴퓨터 구조] 기본 컴퓨터의 구조와 설계
2022.10.04컴퓨터의 구조는 레지스터 (하드웨어 리소스) / 명령어 집합 / 타이밍과 제어 도구들로 정의된다. 컴퓨터 명령어는 마이크로 연산을 기술한 이진 코드이고, 데이터와 함께 메모리에 저장된다. 제어 신호는 명령어를 메모리로부터 읽고 제어 레지스터에 가져다놓는다. (저장) 이후 제어 신호가 명령어를 해석해 제어 함수를 발생시켜 명령어를 실행한다. 명령어 코드는 컴퓨터가 특정 연산을 하도록 지시하는 비트 집합이다. 연산 코드 부분과 주소 부분으로 구성되고, 연산 코드는 연산을 지정하고 주소는 피연산자의 주소를 가리킨다. 메모리로부터 읽혀진 피연산자는 레지스터에 저장된 데이터와 연산을 수행한다. 여기서 연산과 마이크로 연산은 다르다. 연산 내부에 마이크로 연산을 수행하는 부분이 포함되어있다고 생각하자. 명령어 코드..
[컴퓨터 구조] 레지스터와 마이크로 연산
[컴퓨터 구조] 레지스터와 마이크로 연산
2022.10.02레지스터에 저장된 데이터로 실행되는 동작을 마이크로 연산이라고 한다. 레지스터들의 종류를 간단하게 정리하자. MAR : Memory Address Register PC : Program Counter IR : Instruction Register R1 : Processor Register DR : Data Register 제어 명령은 위와 같은 형태로 주어진다. P는 0또는 1을 가지는 변수로 P가 1일 때 레지스터 R1의 값을 레지스터 R2로 전달하라는 의미이다. R2의 로드 입력은 제어 변수 P에 연결돼있고, 논리회로의 클럭과 동기되어 동작한다. t+1 에서 P값이 로드되고 t+1 이후 다음 상승 모서리에서 실제 전송이 발생한다. read와 write 모두 ← 연산으로 처리한다.(DR ← M[AR] ..
[컴퓨터 구조] 데이터의 표현
[컴퓨터 구조] 데이터의 표현
2022.10.02https://13months.tistory.com/477 컴퓨터가 이진수 체계를 사용하는 이유에 대해 살펴봤다. 컴퓨터가 사용하는 데이터의 표현 방식에 대해 간단히 알아보자. 숫자는 이진수로 표현하고, 문자나 기호는 7비트의 ASCII코드를 사용해서 표현한다. 뺄셈 연산과 논리 연산 시 보수 개념이 사용된다. 컴퓨터는 이진수 체계를 사용하니, 1의 보수와 2의 보수 중 하나를 선택해서 사용하면 된다. r진법에서 (r-1)의 보수는 (r^n - 1) - N 으로 정의된다. (n은 자릿수, N은 r진법의 수) r진법에서 r의 보수는 (r^n) - N 으로 정의된다. (n은 자릿수, N은 r진법의 수) 보수에 보수를 취하면 원래 수로 돌아온다. 이진수에서 MSB(제일 왼쪽 비트)를 부호 비트로 사용해 양수와..