In Computer/컴퓨터구조

In Computer/컴퓨터구조

[컴퓨터구조] Logic Design Basics | 논리 설계 기본

Logic Design Basics | 논리 설계 기본 이진수로 인코딩된 정보 이진수는 0과 1로 구성된 숫자체계이다. 전기 신호의 저전압 상태를 0으로, 고전압 상태를 1로 표현한다. 한 개의 전성으로 하나의 비트를 표현할 수 있다. 여러 개의 비트를 묶어서 데이터를 표현할 수 있다. 이러한 데이터는 여러 개의 전성을 묶어서 전송할 수 있는 BUS에 인코딩 된다. 조합요소 데이터를 처리하는 논리 회로는 조합 요소라고 한다. 조합 요소는 입력 데이터를 처리하여 출력 데이터를 생성한다. 출력은 입력에 대한 함수이다. 상태요소 상태 요소는 정보를 저장하는 논리 회로이다. 상태 요소는 입력이 없을 때도 출력을 생성한다. Combinational Elements | 데이터를 처리하는 논리 회로 AND-gate ..

In Computer/컴퓨터구조

[컴퓨터 구조] 32-bit Constants | 32비트 상수

32-bit Constants | 32비트 상수 대부분의 상수는 작기 때문에 16-bit 즉, 2-byte의 즉시값이 충분하다. 그러나 가끔 32-bit 상수가 필요할 때가 있다. 이때는 lui rt, constant를 사용한다. 이 명령어는 16-bit 상수를 rt의 왼쪽 16비트로 복사하고 rt의 오른쪽 16비트를 0으로 지운다. Branch Addressing | 브랜치 주소 지정 브랜치 명령어가 옵코드, 두 개의 레지스터 및 대상 주소를 지정한다. 대부분 브랜치 대상은 근처 브랜치이며, 그 전 혹은 후일 수 있다. PC 상대 주소 지정을 사용하여 대상 주소를 계산한다. 대상 주소는 PC + Offset x 4로 계산이 된다. 이때 PC는 이미 4만큼 증가 되었다. Jump Addressing | ..

In Computer/컴퓨터구조

[컴퓨터 구조] Local Data on the Stack | 지역 변수 저장하는 메모리 공간

Local Data on the Stack | 지역 변수 저장하는 메모리 공간 프로그래밍 언어에서 함수 호출 시 생성되는 지역 변수들을 저장하는 메모리 공간을 Stack Frame이라고 한다. Stack Frame 메모리 공간은 호출된 함수가 종료되면 사라진다. Stack Frame 메모리 공간은 호출된 함수의 프레임(Activation Record)이라고 한다. Memory Layout | 메모리 레이아웃 프로그램이 메모리에 어떻게 배치되는지를 나타낸 표이다. Text : 프로그램 코드 Static data(정적 데이터) : 전역 변수 (ex.상수, c 정적 변수) Dynamic data(동적 데이터) : malloc과 같은 함수를 사용하여 동적으로 할당된 메모리를 저장한다. Stack : 자동 저장소..

In Computer/컴퓨터구조

[컴퓨터구조] Unsigned Binary Integers | 부호 없는 이진 정수

Unsigned Binary Integers | 부호 없는 이진 정수 n비트의 수가 주어지면 다음과 같다. $$x= x_{n-1}2^{n-1}+x_{n-2}2^{n-2}+ \ldots +x_12^1+x_02^0$$ 범위 : 0 ~ $2^n-1$ 32비트를 사용하면, 0 ~ +4,294,967,295 2s-Complement Signed Intergers | 부호 있는 2의 보수 정수 n비트의 수가 주어지면 다음과 같다. $$x=- x_{n-1}2^{n-1}+x_{n-2}2^{n-2}+ \ldots +x_12^1+x_02^0$$ 범위 : $-2^{n-1} ~ 2^{n-1}-1 32비트를 사용하면, -2,147,483,648 ~ +2,147,483,647 일부의 특정한 경우 0 : 0000 0000 $\ld..

In Computer/컴퓨터구조

[컴퓨터구조] Operands of Register, Memory and Immediate | 레지스터, 메모리, 즉각(상수)의 피연산자

Register Operands | 레지스터 오퍼랜드 산술 Instruction(명령어)는 Register Operands를 사용합니다 MIPS에는 32개의 32비트 레지스터를 사용한다. 자주 접근하는 데이터에 사용 0 ~ 31까지 번호로 이름을 사용 32bit 데이터느 "word"라고 불린다. 어셈블러의 이름 임시 변수(Temporary variables)에 대해서는 $t0, $t1, …, $t9 저장된 변수(Saved variables)에 대한 $s0, $s1, …, $s7 설계 원칙 2: 작을수록 빠르다 c.f. 메인 메모리: 수백만 개의 위치를 가짐 Register Operands Example C code f = (g + h) - (i + j); //f, ... , j in $s0, ..., $..

In Computer/컴퓨터구조

[컴퓨터구조] Arithmetic Operations | 산술 연산

Arithmetic Operations | 산술 연산 덧셈과 뺄셈 - three operands(3개의 피연산자) 2개의 source(소스)와 하나의 destination(목적지)이다. add a, b, c # a get b + c //a = b + c 모든 Arithmetic Operations(산술 연산)은 다음과 같은 형태를 지닌다. 설계 원칙 1: Simplicity favors regularity. 간결성(simplicity)는 규칙성(regularity)을 선호한다. 규칙성(regularity)을 이용하여 간결하게 만든다. 간결성(simplicity)을 통해 더 낮은 비용으로 더 높은 성능을 제공한다. 간결하게 만들어야 저렴한 가격의 기계에서도 높은 성능을 이끌어낼 수 있음. Arithmeti..

In Computer/컴퓨터구조

[컴퓨터구조] The MIPS Instruction Set | MIPS 명령 집합

Instruction Set | 명령 집합 컴퓨터의 Instruction(명령어)들의 Repertorie(레파토리) 각각 컴퓨터마다 Instruction set(명령어 집합)이 다르다. 하지만, 많은 공통점들이 있다. 초창기 컴퓨터에는 매우 간단한 Instruction set(명령어 집합)이 있었다. 단순하게 구현되어 있다. 많은 현대 컴퓨터들은 또한 간단한 Instruction sets(명령어 집합들)을 가지고 있다. The MIPS Instruction Set | MIPS 명령 집합 책 전체에서 MIPS를 예시로 사용되고 있다. 스텐포드 MIPS는 MIPS Technologies에 의해서 상용화 되었다. 임베디드 코어 시장의 큰 부분을 점유율을 차지하고 있다. 가전제품, 네트워크/저장 장치, 카메라,..

In Computer/컴퓨터구조

[컴퓨터구조] Addressing Mondes | 주소 지정 모드 (참고)

Addressing Mondes 그림 참조 Addressing Mondes Summary | 주소 지정 요약 중요한 데이터 주소 지정 모드 : Displacemoent(변위), Immediate(즉시), Reguster Indirect(간접 레지스터) Displacemoent(변위) 크기는 12~16비트 Immediate(즉시) 크기는 8~16바트

팽이리
'In Computer/컴퓨터구조' 카테고리의 글 목록