전체 글 64

32bit 운영체제와 RAM 인식

https://think6611.tistory.com/28 메모리 매핑CPU는 RAM, ROM, peripheral등 여러 장치들과 연결되어 있습니다.이 때 CPU는 각 장치들과 DATA, ADDRESS가 연결되어있습니다.그런데 만약 RAM에 DATA를 write하고 싶은데 RAM, Peri1, Peri2 등 DATA path가 전부 쇼트되think6611.tistory.com우선 위 글을 먼저 참고 32bit 운영체제는 2^32 = 4G개의 주소를 지정할 수 있음 하지만 컴퓨터는 RAM말고 다른 곳에도 주소를 지정해줘야하기 때문에 4G의 RAM에 전부 주소를 할당할 수 없음 다른 장치가 있다면 아래와 같은 구조임 물리 주소 공간 (4GB) ┌────────────────────────────┐ 0xFF..

개념 이것저것 2025.10.24

부동소수점

프로그래밍 언어는 어떻게 소수를 다룰까? 우선 소수점의 과학적 표기법에 대해 알아보면 12345 = 1.2345 × 10⁴ 0.00056 = 5.6 × 10⁻⁴ 이런식으로 소수점 왼쪽을 한 자릿수만(1~9) 있게 하는 것이 과학적 표기법이라고 하는데 이진수도 이런식으로 과학적 표기법으로 표시할 수 있음(소수점 왼쪽은 이진수이기 때문에 항상 1임! -> 이것을 normalized number라고 함) 단 10의 거듭제곱이 아닌 2의 거듭제곱꼴로 나타냄(10진) 123.5 → (2진) 1111011.1 = 1.1110111 × 2⁶ 이 때 컴퓨터는 부동소수점을 3부분으로 나눠서 저장함 소수점 왼쪽은 항상 1이기 때문에 가수부는 소수점부분만 저장함부동소수점 = 부호(Sign) + 가수(Mantissa , 1+..

개념 이것저것 2025.10.13

인코더, 디코더, MuX

1. 인코더(Encoder)여러 입력 신호 → 이진 코드 출력예: 8-to-3 인코더라면, 8개의 입력 중 하나가 ‘1’일 때 이를 나타내는 3비트 코드를 출력대표 활용: 키보드 입력 → ASCII 코드, 센서 신호 → 압축된 코드-핵심은 여러 개의 입력 신호를 더 작은 비트 수의 코드로 표현(많은 입력 신호를 적은 비트 수로 표현해 효율성을 높이기 위해 사용)-예를들어 100개의 키보드 직접 연결시 100개의 선 필요 하지만 인코더 사용시 7개만 필요2. 디코더(Decoder)이진 코드 입력 → 여러 출력 신호예: 3-to-8 디코더라면, 3비트 코드 값에 따라 8개 출력 중 하나만 ‘1’이 됨대표 활용: AMBA APB BUS, 메모리 주소 선택, 7-세그먼트 디스플레이 구동-메모리 주소가 주어졌을 ..

개념 이것저것 2025.09.30

임베디드 메모리 구조

1. Stack특징 : 함수 실행을 위한 작업 공간-지역변수, 리턴주소, 등을 저장함수 호출마다 스택 프레임이 생기며, Stack Pointer(SP)가 줄었다 늘어나면서 공간을 관리ex) main함수에서 adder라는 함수를 호출할 때 2. HEAP특징 : 동적으로 할당되는 메모리 공간RTOS 사용시 각 thread의 독립공간(고유 stack영역)이 만들어짐따라서 쓰레드 실행시 함수가 호출되는데- 지역 변수, 리턴 주소 등이 push → SP 감소, 함수가 끝나면 pop → SP 증가.- 이 증감은 모두 스레드의 스택 블록 내부에서만 발생. 3. bss특징 : 초기화 안된 전역변수 저장 4. data(gvar)특징 : 초기화 된 전역변수 저장 5. text특징 : 설계하고 다운해서 실제로 돌아가는 코..

컴퓨터구조 2025.09.16

디지털 기본 개념

1. 순차논리회로(Sequential Logic Circuit) vs 조합논리회로(Combinational Logic Circuit)차이조합논리회로는 output이 input에만 의존하고 순차회로는 과거 input의 sequence, 즉 state와 input에 의해 output이 결정이 됩니다.그렇기데 순차회로는 과거의 값을 기억해야하므로 메모리 역할을 하는 Flip Flop같은 것이 필요하고과거를 기억하는 특성 때문에 조금 더 복잡한 동작을 구현할 수 있습니다.(ex자판기, 동영상 재생 바) 2. Setup Time , Hold timeSetup Time 은 CLK의 edge전에 데이터가 미리 안정돼 있어야 하는 시간을 의미하고Hold Time은 CLK edge후에도 데이터가 그대로 유지돼야 하는 ..

개념 이것저것 2025.08.30