FIELD NOTE · ADDRESS RANGE
시작과 끝 주소를 모두 포함하는 메모리 범위는 단순 차이가 아니라 End-Start+1입니다. 이 한 byte 차이는 linker LENGTH, Flash erase 범위와 버퍼 경계에서 실제 결함으로 이어질 수 있습니다.
0x20000000부터 0x20000FFF까지는 4096 bytes입니다. 시작 주소와 64 KiB 크기를 알면 끝 주소는 Start + 65536 - 1로 계산합니다.
KiB와 MiB는 각각 1024와 1024² bytes입니다. DMA, 캐시와 버스 접근은 2·4·8 byte 또는 더 큰 경계 정렬을 요구할 수 있으므로 용량이 맞아도 시작 주소가 유효한지 확인해야 합니다.
0x0000~0xFFFF는 65535 bytes인가요? 양 끝을 포함하므로 65536 bytes입니다.
KB와 KiB는 같은가요? KB는 1000, KiB는 1024를 뜻하지만 임베디드 메모리는 흔히 1024 기준입니다.
주소 범위가 맞으면 접근 가능한가요? MPU, 보안 속성과 예약 영역을 별도로 확인해야 합니다.
FIELD NOTE · ADDRESS RANGE
Inclusive memory size is End-Start+1. A one-byte mistake affects linker lengths, erase ranges, and buffers.
0x20000000 through 0x20000FFF is 4096 bytes. For a known size, end is Start + Size - 1.
KiB and MiB use 1024 and 1024² bytes. DMA, cache, and bus access may require additional alignment.
0x0000–0xFFFF size? 65536 bytes.
KB vs KiB? 1000 versus 1024 bytes.