Это странное слово "Перфокарта"

2016-07-27 | 00:37 , Категория фото


Хочу вам показать, как записывалась информация на перфокарты. Например, на данную перфокарту мы запишем слово "Привет".

На этой фотографии изображена перфокарта, на которой не записано никакой информации (т.е. она "чистая").

Информация на такие перфокарты записывалась с помощью прокалывания дырок в определённых местах, если был прокол, то это "1", а если прокола в определённом месте нет - тогда "0". На первом и трёх последних рядах отмечалась служебная информация, а вот восемь рядов (от ряда с нулями до ряда с семёрками) - это как раз ряды, где хранились сами данные в виде проколотых точек, точки прокалывались там, где нужно, на месте указанных цифр ряда.

Срез в верхнем левом углу показывает, где "начало" перфокарты, очевидно, что этой стороной её вставляли в привод считывания/записи на перфокарты. Заранее хочу сказать, что данная перфокарта имеет объём памяти 80 байт!

Т.е. одна обычная дискета на 1,44 мегабайта может хранить приблизительно столько же информации, сколько 18000 перфокарт!!! Теперь, надеюсь, вы представляете, почему, когда изобрели дискеты, говорили, что мгновенно стали не нужны тонны перфокарт.

При случае хочу показать, как записывалась информация на перфокарты. Например, на данную перфокарту нам нужно записать слово "Привет".

Мы знаем, что компьютер в своей работе использует только нули и единицы (нет электрического сигнала / есть сигнал). Эти нули и единицы называются битами. 8 бит равняются одному байту.

Итак, в байте есть 8 цифр "0" или "1", которые могут быть размещены в разных комбинациях, например, это всё байты: 01010101, 00000000, 01100100, 11111100...

Как видим, комбинаций размещения нулей и единиц в байте может быть очень много, а всего их 256. Т.е. "разных байтов" в компьютере есть 256. Но для удобства людей эти байты компьютер обозначает символами алфавита, цифрами и разными знаками, ведь нам легче воспринять букву "Н", чем, например, комбинацию "11000101".

Эти способы обозначения двоичных комбинаций называются кодовыми таблицами, в каждой операционной системе они разные, и в каждом компьютере, но также могут быть и одинаковыми, и вообще,

программист может сам поменять вид компьютерных символов по своему усмотрению, так, как это делает известная программа для DOS - keyrus.

Эта программа добавляет кириллические буквы в стандартную таблицу символов операционной системы DOS

(которая создавалась в Америке, где про кириллицу, естественно, никто не думал), и теперь мы можем создавать и комфортно работать в программах, где надписи написаны кириллицей, а если не запускать программу keyrus, то вместо кириллических надписей будут разные "иероглифы", т.е. другие не кириллические символы.

Надеюсь, вы уже поняли, что и каждая буква из слова "привет" имеет свой двоичных аналог. Чтобы перевести слово, мы воспользуемся кодовой страницей операционной системы MS-DOS

её кодовая страница называется ASCII, а в Windows, например, кодовая страница называется Windows-1251.

Для записи слова "привет" сначала нужно перевести каждую его букву (байт) в десятичный код таблицы ASCII, таблицы кодов я уже не помню. :)

И книги с кодами при себе сейчас нет, поэтому пришлось на скорую руку "склепать" программу на Паскале, которая выдала мне десятичные коды каждой буквы слова "привет"
Сама программа простенькая до невозможности, но стандартная функция Паскаля "ord" нам очень помогла:

Запускаем программу, и теперь мы получили коды букв слова "привет": "П"-143, "р"-224, "и"-168, "в"-162, "е"-165, "т"-226 .

Эти коды в десятичной системе исчисления, а компьютер работает в двоичной, поэтому переведём их с помощью обычного калькулятора:

Всё!

Мы получили двоичные коды, которые можно "записать" на перфокарту, начиная с верхнего левого угла и дальше вниз, а следующий байт снова сверху слева, под предыдущим байтом, и так далее...

Вот как будет выглядеть записанное слово "Привет" на перфокарте

(чёрным, обозначены единицы, а нулей "нет", точнее, они не отмечены). Теперь, если попробовать считать эту перфокарту, то компьютер считает единицы, а там где светового/механического контакта не будет (т.к. дырки не пробиты), компьютер "поймёт", что на перфокарте "записаны" нули. После этого программа компьютера перекодирует двоичные коды в коды символов, и уже соответственно этим кодам выведет на экран надпись "Привет".

После многих лет использования такого способа ввода, дискеты сделали огромную революцию, нам даже теперь трудно представить, как дискета облегчила людям жизнь.