1. 64K 메모리 동작과 구성 이해
8 x 1 RAM array
- 8 x 1 RAM을 두 개 엮었을 때, Data In은 8 x 1 RAM에 별도로 입력이 들어감
- Address와 Write는 두 8 x 1 RAM에 동일하게 입력이 들어감
8 x 2 RAM array
- 8개의 데이터를 저장하고 읽는데, 각 데이터는 2 bits
16 x 1 RAM array
- 8 x 2 RAM array 구조에, Select와 1-to-2 Decoder/2-to-1 Selector 추가
- Select는 4번째 Address 역할을 함
- 16개의 데이터를 저장하고 읽는데, 각 데이터는 1 bit
m * n RAM array
- 많은 데이터를 저장할 수 있음
- 8 x 1 RAM을 여러 개 연결하고, 여러 개의 Select로 Decoder/Selector를 구성하면 많은 데이터를 읽고 저장할 수 있음
- Address 10개: 2의 10승 -> 1024, DI 8개: 1 byte(8 bits), 1024 x 8 bits = 8196 bits를 다루는 RAM array
64K RAM
- Address 수 / Data In 수 / Data Out 수로 RAM array 만들기
- 65,536(2의 16승) x 8 bits
- 2의 16승 -> 16은 2 bytes(byte 단위가 편함)
- 64K = 65536
*kilobyte와 kilobit
- 1024 kilobytes = 1 megabyte = 1 mega x 8 bits = 8 megabits
- 1024 megabytes = 1 gigabyte
- kilobits/megabits: 네트워크에서 많이 사용
-> kilobits per second 또는 megabits per second
-> 예시) 56k 모뎀 - 56 kilobits per second
2. Accumulator(가산기) 동작과 구성 이해
Accumulator(가산기)
- Clear 입력 추가(Data 삭제)
- Clear가 1이면 Q output은 0
- Flip-flop 값 삭제 가능
- Data에 어떤 입력이 와도, Clear 입력으로 output 값 삭제
- 8-Bit Adder와 8-Bit Latch로 구성
- 8-Bit Latch에서 Clear 스위치는 Clear 입력에 들어가고, Add 스위치는 Clock 입력에 들어감
- 8-Bit Addere에서 덧셈이 계산되고 이 값이 8-Bit Latch에 들어가려면, Add 스위치가 눌려졌을 때 8-Bit Latch에 저장됨
메모리 계층-컴퓨터 구조 이해
- 레지스터는 CPU가 요청을 처리하는데 필요한 데이터를 일시적으로 저장하는 기억장치
3. 디지털 컴퓨터와 프로그래밍 이해
Program Counter(PC)
- 16-Bit Counter: 1씩 증가하는 조합논리회로
여러 숫자를 더하고 싶다(회로로 구성 가능)
1. 각 숫자를 OOOOh부터 순차적으로 써넣는다
-> Control Panel에 Takeover 스위치를 1로 한 후, 각 숫자를 각 주소에 써넣는다
2. Takeover 스위치를 0으로 해서, 더 이상 Control Panel이 RAM을 제어하지 않도록 만든다
3. PC의 Clear 스위치가 0이 되면, PC는 OOOOh부터 RAM에서 데이터를 가져온다
4. Adder가 값을 더한다
5. 클럭(Oscillator)이 0과 1로 변할 때마다 PC 값이 증가한다
Automation
- OOOh 주소부터 데이터 저장되어 있음
- 세 수를 더하고, 두 수를 더하고, 세 수를 더한다고 가정
Programming
- "Data" & "Code": 각 주소에 대응해서 Load/Add/Store를 의미하는 값을 만들어야 함
-> RAM을 분리하여 명령을 의미하는 값을 순차적으로 넣어두면 코드 실행 가능
- h는 Hex(16진수)를 의미
- 아래와 같이 각 명령을 의미하는 숫자로 만들고 각 주소에 맞는 코드 넣기
- 명령 숫자: Instruction Code, Operation Code, 또는 opcode라고 함
Load와 Store 명령
- Load: 2-to-1 Selector로 Data를 Add하지 않고 바로 8-bit Latch에 넣음
- Store: 8-bit latch의 Output을 바로 64K x 8 RAM에 저장(Write 스위치를 1로 만듬)
Digital Computer
- 구분된 숫자를 기반으로 동작하는 컴퓨터
- CPU, Memory, PC, Input(Switches), Output(출력전구)
- Memory: 64KB RAM