본문 바로가기

흔한 학교 생활/컴퓨터 코딩 데이터12

[마이크로프로세서] ARM 부동소수점 레지스터 구조 부동소수점 연산 프로세서의 레지스터정수 연산과 다르게 부동소수점, floating point 연산은 별도의 프로세서로 처리하게 됩니다.즉 전용 레지스터 32개를 가지고 있습니다. 알고있듯이 C언어 프로그래밍에서 float 자료형의 크기는 4바이트(32비트)이고double 자료형은 8바이트(64비트) 입니다.때문에 float 자료형을 사용할 때는 64비트 레지스터에서 하위 32비트를 사용하며 single S0 레지스터부터 S31 레지스터라고 칭합니다.double 자료형을 사용할 때는 레지스터의 64비트를 전부 사용하며 D0 ~ D31 레지스터라 칭합니다.  레지스터의 이진 구조그렇다면 레지스터에 실수가 어떻게 저장되어 있을까요?우선 이진수로 된 실수는 정규화된 형태로 저장됩니다. normalization .. 2024. 5. 8.
[마이크로프로세서] ARM 2진수 곱셈 나눗셈 처리 하드웨어 2진수 곱셈곱셈에서는 곱해지는 수, 곱하는 수, 결과 세 가지 요소가 존재합니다.이를 multiplicand, multiplier, product 라고 칭합니다. 4비트의 곱셈을 생각해보면 덧셈의 연속이라 할 수 있습니다. (실제 프로세서에서는 64비트 곱셈)평소에 곱셈하는 방법을 생각해보면 multiplicand에 multiplier 의 한 자릿수씩 곱하고 더해 곱셈을 완료합니다.같은 방식으로 2진수의 곱을 진행해보면multiplier의 일의 자리부터 차례대로 더해나갈 것입니다. 이때 자릿수에 1이 있다면 더하면 될 것이고, 0이 있다면 0을 곱하고 더하는 것이니 더하지 않고 넘어가면 될 것입니다.곱 ver1.먼저 오른쪽 끝을 체크하고 1이면 더하고 0이면 더하지 않습니다.그리고 multiplicand.. 2024. 5. 1.
[마이크로프로세서] D flip flop 메모리, Memory Map D 플립플롭을 이용한 메모리, 메모리 맵의 구조 D flip flop을 이용한 메모리의 구조에 대해 알아보겠습니다. 우선 1비트를 저장하는 방법에 대해 알아볼 것이고 앞서 배운 data bus, address bus, control bus가 어떻게 연결되어 있는지 알아보겠습니다. 우선 D 플립플롭은 D, Q, CLK 로 구성되어 있습니다. data bus는 데이터를 읽고, 쓰기 위해 D와 Q에 연결되어야 합니다. 그리고 address bus는 특정 주소의 메모리만 enable 하는 목적이므로 CLK에 디코더를 통해 연결되어 있습니다. 그리고 제어 신호는 어디로 연결되어야 할까요? $\overline{MEMW}$ 와 $\overline{MEMR}$ 신호를 받을 수 있을텐데요. bar 가 함께 있음은 act.. 2024. 3. 15.
[마이크로프로세서] 명령어 처리과정, 레지스터 동작 [마이크로프로세서] Accumulator, Flag resistor 레지스터A: Accumulator resistor 연산의 결과를 저장하는 레지스터 입니다. F: Flag resistor Flag resistor 는 실행 중 판단을 할 수 있도록 도와주는 레지스터 입니다. 8비트의 F 레지스터의 구성에 대해 알아보겠습니studentstory.tistory.com이번에는 다양한 명령어의 처리과정과 동작에 대해 알아보겠습니다. 전전 글에서 명령어의 크기 기준으로 1바이트, 2바이트, 3바이트 3가지 크기의 명령어가 존재했습니다. 각 크기의 명령어 예시와 처리과정, 동작 방법에 대해 더 자세히 알아보겠습니다. 명령어를 암기하기보단 처리 과정을 이해한다는 느낌으로 봐주시면 좋겠고 이전 글에서도 말했듯 마찬가지.. 2024. 3. 12.
[마이크로프로세서] 레지스터(Accumulator, Flag, etc) 계속 설명하던 8085 프로세서에는 레지스터가 존재합니다. 8비트 레지스터 A F B C D E H L 과 2개의 16비트 레지스터 PC, SP 가 있다고 설명합니다. 이 레지스터의 용도에 대해 가볍게 알아보겠습니다. A: Accumulator register연산의 결과를 저장하는 레지스터 입니다.F: Flag registerFlag register 는 실행 중 판단을 할 수 있도록 도와주는 레지스터 입니다. 8비트의 F 레지스터의 구성에 대해 알아보겠습니다. S : sign bitA의 첫 비트를 따라가기에 A의 첫 비트와 똑같은데 부호를 의미합니다. Z : zero flagA 값이 0인지 판독하는 역할입니다. 값이 0이라면 Z에는 1이 들어가고 이외에는 0이 들어갑니다. PA에서 1 개수를 체크합니다... 2024. 3. 12.
컴퓨터 프로그램 실행 과정과 CISC 명령어 소스파일 빌드 과정 (.exe 파일 생성 과정) ---.c 소스파일 ↓컴파일러↓ assemble ↓어셈블러↓ 기계어 ---.obj ↓Linker↓ .exe ↓loader↓ 메모리 내부 실행과정 ~~~.exe 프로그램을 loader 가 메모리에 탑재한다. 8비트 레지스터 8개와 16비트 레지스터 2개로 구성된다. 1-1. 메모리에 실린 프로그램의 주소 번지를 PC(program counter)에 싣습니다. 1-2. 주소가 address bus에 실려서 enable? 마이크로프로세서 MEMR 1-3. PC가 1증가하고 data bus 에 op code(operation code)가 실려서 마이크로프로세스 내부로 간다. 1-4. Instruction Decoder (I.D.)가 해석하고 실행한다. 2-1. 다.. 2024. 3. 7.
반응형