Предположим, у нас есть 1kb-страницы (2^10). Адрес 512. Для того, чтобы найти число страниц, мы делаем:Расчет номеров страниц и смещений
512/1024 = 0,5 (поэтому это на странице 1)
Чтобы найти смещение мы делаем (адрес - (страница * PAGE_SIZE)):
512 - (1 * 1024) = -512
отрицательное смещение невозможно, это?
Или это должно быть 0 смещение 512? –
Это всего лишь один пример того, почему некоторые языки программирования индексируются с нуля. Дальнейшее чтение. Edsger W. Dijkstra «Почему нужно начинать нумерацию с нуля» http://userweb.cs.utexas.edu/users/EWD/transcriptions/EWD08xx/EWD831.html –
Это интересно, спасибо! –