Хтось знає, чому сектори дискети IBM названі від 1 до 8 (а не від 0 до 7) [закрито]


10

Зараз я програмую на 8-бітовому комп'ютері Z80 з CP / M 2.2, (як хобі), а формат дискети - це IBM, 40 треків, 8 секторів на трек, 512 байт на сектор. вільний простір 154 Ко на кожній грані диска.

Чому сектори індексуються від 1 до 8 (а не нуль до семи, як це зазвичай буває з комп'ютерами)?

Каталог дискети знаходиться на доріжці 1 (сектор 1 - 4, 64 записи).

Мені цікаво, чи є каталог на нульовій доріжці?

Чи нульова доріжка зарезервована для включеної системи (як доріжки 0 і 1 зарезервовані для системи на дискеті CP / M, а каталог - на доріжці 2)?


Я запитав це, тому що, наприклад, у APPLE II сектори починаються з нуля (0 до F).

Комп'ютер, який я використовую, є AMSTRAD CPC 6128 (1985). Це 8 біт із Zilog Z-80, доступні CP / M OS 2.2 та 3.0.

Формат дискети досить рідкісний: 3 дюйми. (не 3 1/2).

3 FORMATS доступні: -CP / M: 40 треків (від 0 до 39) 9 секторів на доріжку (з назвою & 41 до & 49) 169 Ko на кожній стороні. -DATA: 40 треків (від 0 до 39) 9 секторів на трек (з назвою & C1 до C9) 178 Ко на кожній грані. -IBM: 40 треків (від 0 до 39) 8 секторів на доріжку (названо від 1 до 8) 154 Ko вільного місця на кожній грані.

3-дюймова дискета відрізняється від дискети 3 1/2. Щоб прочитати бічну сторону B: я повинен вийняти дискету і сам повернути її, а потім знову поставити її в дисковод! але це працює дуже добре.

Треки починаються від 0 до 39. Мені просто цікаво знати, чому сектори починаються з 1, і чому трек 0 не використовується для каталогу у форматі IBM ...

Наприклад, формат CP / M дуже простий: каталог на треку 2, системний CP / M на треку 0 і 1.

Я досвідчений програміст збірки, і я думаю, що було б логічно, щоб сектори починалися з нуля, як це роблять треки. Комп'ютер AMSTRAD CPC також може приймати диск на 1/ 1/4 диска. Я купив одну вчора. Але доріжки, сектори та формати будуть звичайно однаковими на 5 1/4 дискетах.

Олів'є.

ps: вибачте за мою англійську, це не моя рідна мова. ^^


Іноді щось таке, як воно є, тому що саме так і є. (І майте на увазі, що формат дискети дуже рано почасти почасти електромеханічні системи введення даних із ключа на диск. Що означає, що інженери-механіки мали таку ж велику руку в дизайні, як і EE.)
Daniel R Hicks

40 треків ви впевнені? Це була б одностороння 5,25 "дискета. Або ви маєте на увазі 40 циліндрів та двосторонні дискети? BTW CP / M зазвичай підтримують дискети 8" та 5.25 " , одно- та двосторонні дискети, формати запису з одно- та двосторонньою щільністю , і асортимент розмірів секторів (256, 512 та 1024 були загальними). ​​PC-DOS IBM підтримував дискети SS та DS 5.25 "та допомагає стандартизувати 512 байтів на сектор.
тирса

1
Питання в заголовку не прив'язаний до «дискеті IBM», але сходить до «стандартним» гнучким дискам контролерам з IBM 3740 і IBM System 34, які стали стандартами для одинарних і подвійних форматів запису щільності. Схеми нумерації були розроблені інженерами обладнання та реалізовані для командних послідовностей, а не розроблені інженерами програмного забезпечення або програмістами.
тирса

1
Зараз існує ретро обчислювальний стек для таких питань.
CJ Dennis

Дивіться також: superuser.com/questions/974952/…
hippietrail

Відповіді:


6

Я думаю, у вас неправильне уявлення про те, що справи щодо комп'ютерів починаються з нуля.

Незважаючи на те, що це стосується всіх мов на основі C (C, C ++, C #, Java тощо), це не відповідає дійсності деяких мов, які є старими або старшими за C (наприклад, FORTRAN і COBOL).

Оскільки Z80 був представлений до ANSI C, очікувалося, що він буде працювати набагато більше COBOL та FORTRAN, ніж Lisp (який також дуже старий, але має нульову індексацію).

Таким чином, індексація на основі сенсу має сенс.


2
Мікропроцесор Zilog Z80 та будь-які мови програмування, які він, можливо, підтримував, не мають нічого спільного з стандартами дискети. Дискети були винайдені ще до появи Z80.
тирса

1
@sawdust, це має набагато більше спільного зі стандартами на той час. Оскільки в той час, як очікували, багато речей було індексовано, флоппі теж були.
soandos

4
Ваше "пояснення" не враховує той факт, що номер балона і номер головки пронумеровані нулем, а не одним.
тирса

3

Перша специфікація на дискетах була зроблена IBM з появою IBM 3740 і не згадує про те, що є системи, зарезервовані для системи. Єдине застереження для системи - це трек 00, на якому зберігаються лише "Мітки набору даних", які ідентифікують тип інформації, що зберігається у доріжках від 01 до 76. Це чітко визначає, що перший сектор є СЕКТОР 1. Це не випадковість, а матерія натуральної нумерації проти нумерації комп'ютера.

Ми можемо спостерігати, що коли людина починає рахувати що-небудь, це починається не з нуля, а з одного. Наприклад, уявіть, що в класі 135 учнів. Порахувати число було б приблизно так: Раз, два, три ... сто тридцять чотири, сто тридцять п’ять.

Його числове представлення було б таким чином: 1, 2, 3, ... 134, 135 Поки ми згодні, правда?

Тепер поставимо цифри, які не представлені числом 0. Це виглядатиме так: 001, 002, 003, ..., 015, 016, ..., 099, 100, ..., 133, 134, 135

Ось що відбувається з CHS : 0,0,1 - 0,0,2 - 0,0,3 ...

Важливо, що рядки на аркушах Excel або авто-числові поля в базі даних починаються з 1, а не з 0, і ніхто про це нічого не говорив.

Девід Дж. Бредлі запланував BIOS таким чином?

Так, але він не був стороною.

Однозначно немає технічних причин, чому SECTOR 0 не можна використовувати, якщо він не зарезервований і прихований від користувачів з інших причин. В принципі все вказує на це - питання натуральної нумерації.

GA21-9152-2 Файл № 3740-00,15
Система введення даних IBM 3740

стор. 12
ІНІЦІАЛІЗАЦІЯ ДИСКУ
... Кожен диск містить дві запасні доріжки для заміни будь-яких неправильних доріжок. Крім того, функція ініціалізації забезпечує засіб зміни послідовності адреси сектора на дискеті. Зазвичай послідовність секторів знаходиться в числовому порядку (1, 2, 3, ... 25,26)
.

сторінка 24
ЕТИКЕТ ДАНИХ НА ДИСКЕТІ
Під час ініціалізації мітка набору даних для набору даних магнітно записується на індексну доріжку (доріжка 00) дискети. Основна мета цієї мітки - показати розташування набору даних на дискеті

Це було в 1973 році. У ньому записані дані на 8-дюймовій дискеті. IBM PC 5150 народився 12 серпня 1981 року ... і не можна забувати, що їм довелося підтримувати певну сумісність з попередніми пристроями.

Технічних причин точно не було.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.