[컴퓨터구조] Big endian VS Little endian (수정 중) 네트워크 바이트 오더는 빅엔디언 방식 나의 컴터는 인텔 리틀엔디언 방식 바이트 오더 변환해줘야 참고: https://ko.m.wikipedia.org/wiki/엔디언 엔디언 - 위키백과, 우리 모두의 백과사전 엔디언 1차원의 공간에 여러 개의 연속된 대상을 배열하는 방법 ko.m.wikipedia.org http://www.tcpschool.com/c/c_refer_endian 컴퓨터공학/컴퓨터구조 2023.02.11
[컴퓨터구조] (펌)CPU와 메모리 pearlluck.tistory.com/120 [하드웨어기초] CPU와 메모리 하드웨어 : 컴퓨터에 필요한게 뭐가 있을까? 1. 입출력장치(I/O장치) : 키보드/마우스로 입력하고, 2. CPU : 프로그램이 돌아갈 작업을 처리하고, 3. 메모리 : 작업 중에 중요한 내용은 저장해야 pearlluck.tistory.com ==메모리구조 https://www.youtube.com/watch?v=JHxY08iENxs (개발남노씨 자료구조 강의) 시각화가 잘되서 굿굿 메모리 계층 구조 상위일수록 메모리 속도가 빠르고 고가이다. CPU에 가까울수록 메모리 속도가 빠르고 고가이다. 'CPU 레지스터' - 캐시 - 주기억장치 - 디스크캐시 - 디스크 - 자기 테이프 및 CD-ROM (중간 중간에 캐시가 보이는 건 .. 컴퓨터공학/컴퓨터구조 2021.03.17
[컴퓨터구조] 명령어집합 명령어 집합(영어: instruction set) 또는 명령어 집합 구조(영어: Instruction set architecture, ISA)는 마이크로프로세서가 인식해서 기능을 이해하고 실행할 수 있는 기계어 명령어를 말한다. 마이크로프로세서마다 기계어코드의 길이와 숫자코드가 다르다. 명령어의 각 비트는 기능적으로 분할하여 의미를 부여하고 숫자화한다. 프로그램 개발자가 숫자로 프로그램하기가 불편하므로 기계어와 일대일로 문자화한 것이 어셈블리어이다. 최하위 레벨의 프로그래밍 인터페이스로, 프로세서가 실행할 수 있는 모든 명령어들을 포함한다. 명령어 집합, 곧 명령어 집합 구조는 자료형, 명령어, 레지스터, 어드레싱 모드, 메모리 구조, 인터럽트, 예외 처리, 외부 입출력 을 포함한 프로그래밍 관련 컴퓨터.. 컴퓨터공학/컴퓨터구조 2020.09.10
[컴퓨터구조] CPU Cache 캐시 https://ko.m.wikipedia.org/wiki/CPU_캐시CPU 캐시 - 위키백과, 우리 모두의 백과사전동적 CPU 메모리 캐시 그림 CPU 캐시(CPU cache[1])는 CPU 구조에 메모리로 사용하도록 구성되었다. CPU 캐시는 메인 메모리에서 가장 자주 사용되는 위치의 데이터를 갖고 있는 크기는 작지만 빠른 메��ko.m.wikipedia.org 프로세서가 메인 메모리를 읽거나 쓰고자 할 때는, 먼저 그 주소에 해당하는 데이터가 캐시에 존재하는지를 살핀다. 만약 그 주소의 데이터가 캐시에 있으면 데이터를 캐시에서 직접 읽고, 그렇지 않으면 메인 메모리에 직접 접근한다. 이때 대부분의 프로세서는 메인 메모리에 직접 접근해서 전송된 데이터를 캐시에 복사해 넣음으로써 다음번에 같은 주소에 프.. 컴퓨터공학/컴퓨터구조 2020.08.18
[컴퓨터구조] 명령어 형식 명령어 방식 명령어는 명령부(OP Code + Mode)와 자료부(주소필드, Operand)로 구성합니다. 이 중에 자료부(Operand 부)에 올 수 있는 개수에 따라 명령어 방식을 구분합니다. 0주소 명령어(0 Address Instruction) 1주소 명령어(1 Address Instruction) 2주소 명령어(2 Address Instruction) 3주소 명령어(3 Address Instruction) 0주소 명령어(0 Address Instruction) OP Code 부만 있고 주소를 지정하는 자료부(Operand 부)가 없는 명령어 모든 연산은 Stack 메모리의 TOP(Stack 포인터)이 가리키는 Operand를 이용하여 명령을 수행합니다. 스택 기계(Stack Machine)라고 .. 컴퓨터공학/컴퓨터구조 2020.07.22
[컴퓨터구조] 레지스터(Register) 레지스터는 데이터를 저장하고 조작하는 것을 돕는 마이크로프로세서의 메모리 영역이다. 컴퓨팅에서, 하드웨어 레지스터는 다른 종류의 '하드웨어 입출력 (I/O)'를 위한 저장공간이다. 하드웨어 레지스터는 주요 주변장치의 내부에 포함되어 있고, '메모리맵 I/O'나 '포트맵 I/O'의 의미에 따라서 컴퓨터의 '중앙 처리 장치(CPU)'를 나타낸다. 특히 초기화 동안에, "환경설정"과 주기능의 시작을 포함하는 하드웨어 레지스터의 일반적인 사용은, 1. "버퍼 저장공간" (예시로 그래픽 카드 VGA 를 위한 비디오 메모리)과, 2. 하드웨어 장치에 발생되는 주요한 사건 같은 "상황 보고"가 있다. 읽어진 하드웨어 레지스터는 프로세서(Processor, Microprocessor, CPU)에 의한, "읽기"나 "저.. 컴퓨터공학/컴퓨터구조 2020.06.22
[컴퓨터구조] 파이프라이닝 [컴퓨터구조] 파이프라이닝 명령어 파이프라인(instruction pipeline)은 명령어를 읽어 순차적으로 실행하는 프로세서에 적용되는 기술로, 한 번에 하나의 명령어만 실행하는 것이 아니라 하나의 명령어가 실행되는 도중에 다른 명령어 실행을 시작하는 식으로 동시에 여러 개의 명령어를 실행하는 기법이다. 하나의 명령어는 여러 개의 단계로 나눌 수 있는데, 이때 하나의 명령어를 처리할 때까지 다음 명령어가 처리되지 않고 기다린다면, 명령어의 특정 단계를 처리하는 동안 다른 단계를 처리하는 부분은 아무 작업도 하지 않게 된다. 이때 파이프라인을 사용하면 한 명령어의 특정 단계를 처리하는 동안 다른 부분에서는 다른 명령어의 다른 단계를 처리할 수가 있게 되므로 속도가 향상될 수 있다. [컴퓨터구조] 파이프.. 컴퓨터공학/컴퓨터구조 2020.05.31
[컴퓨터구조] CPU와 파이프라인 [컴퓨터구조] CPU와 파이프라인 여러분이 만든 C소스를 컴파일을 하고 나면 하나의 바이너리가 만들어지겠죠. 이 바이너리를 실행하는 CPU는 8비트씩 바이너리를 읽어와서 실행을 한답니다. 그럼 32비트라면 어떻게 될까요? 아무래도 비트수가 많을 수록 '처리하는 속도'가 빨라지겠죠. 마이크로 프로세서 과목에서 반드시 이해하셔야 될 것은 LED ON/OFF 랍니다. C프로그램으로 LED ON/OFF 프로그램을 만들 수 있다면 임베디드 시스템에서 하드웨어를 제어할 수 있다는 의미죠. 왜냐하면 LED ON/OFF를 하려면 먼저 '회로도'를 보셔야 해요. CPU 어느 핀에 LED를 연결했는지 확인을 한 후 해당 핀에 어떻게 신호를 넣으면 될지 프로그램을 해야 하는데, 그러려면 CPU데이터 시트를 보면서 프로그램을.. 컴퓨터공학/컴퓨터구조 2020.05.31