Сохранение и считывание файлов 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Сохранение и считывание файлов



 

Информация в массовой памяти хранится в виде больших блоков, которые принято называть файлами. Типичный файл может содержать некоторый тек­стовый документ, фотографию, программу или совокупность данных о персонале какой-либо компании. Физические особенности устройств массовой памяти тре­буют, чтобы файлы сохранялись и считывались отдельными блоками из большо­го количества байтов. Например, каждый сектор на магнитном диске должен обрабатываться как одна непрерывная строка битов. Блок данных, соответст­вующий физическим характеристикам запоминающего устройства, называется физической записью. Поэтому файл, записанный в массовую память, обычно со­стоит из множества физических записей.

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

Размер логической записи редко совпадает с размером физической записи, который определяется типом устройства массовой памяти. Поэтому несколько логических записей могут помещаться в одну физическую запись, и наоборот, логическая запись при необходимости может разделяться на несколько физиче­ских (рис. 1.11). В результате считывание данных файла с устройства массовой памяти обычно связано с восстановлением его логических записей из физиче­ских. Типичный способ решения этой проблемы состоит в выделении некоторой области основной памяти, достаточно большой для размещения нескольких фи­зических записей файла, и использовании ее в качестве промежуточного храни­лища для перегруппировки информации. В результате обмен данными между этой промежуточной областью и устройством массовой памяти может осуществ­ляться блоками данных, соответствующими физическим записям, тогда как для программ находящаяся в основной памяти информация может быть представле­на в виде логических записей. Используемая подобным образом область основ­ной памяти называется буфером.

Использование буфера поясняет относительную роль основной и массовой па­мяти в системе. Основная память используется для хранения данных в целях их обработки, тогда как массовая память является постоянным хранилищем ин­формации. Таким образом, обновление сохраняемой в массовой памяти инфор­мации предполагает передачу информации в основную память, изменение ее, а затем возврат обновленной информации в массовую память.

Рис 1.11 Представление логических и физических записей на диске

 

Можно сделать заключение, что основная память, магнитные диски, компакт-диски и магнитная лента представляют различные уровни возможности прямого доступа к данным в порядке ее уменьшения. Используемая в основной памяти система адресации допускает быстрый произвольный доступ к отдель­ным байтам данных. Магнитные диски обеспечивают прямой доступ только к целым секторам данных. Кроме того, время, затрачиваемое на считывание сек­тора, включает также время установки и время ожидания. Компакт-диски тоже поддерживают произвольный доступ к отдельным секторам, однако величина за­держки для компакт-дисков значительно больше по сравнению с магнитными дисками. Это обусловлено тем, что в этом случае требуется дополнительное вре­мя для того, чтобы найти спиральную дорожку и настроить скорость вращения диска. Наконец, устройства с магнитной лентой не позволяют получать прямой доступ к информации. Современные лентопротяжные системы маркируют фраг­менты ленты, что позволяет ссылаться на различные сегменты по отдельности, однако сама физическая организация данных обуславливает то, что поиск сег­мента потребует достаточно много времени.

 

Представление информации в виде комбинации двоичных разрядов

 

В этом разделе мы рассмотрим, как информация в машине представляется в виде комбинации двоичных разрядов (битов). В частности, мы обсудим популяр­ные методы кодирования текста, представления цифровых данных и изображе­ний. Каждый из указанных методов имеет специфические особенности, с кото­рыми часто сталкивается типичный пользователь компьютера. Наша задача — всецело ознакомиться с этими технологиями, чтобы потом можно было оценить все их последствия.

 

Представление текста

 

Информация в форме текста обычно представляется с помощью кода, причем каждому отличному от других символу (например, букве алфавита или знаку пунктуации) присваивается уникальная комбинация двоичных разрядов. В этом случае текст будет представлен как длинный ряд битов, в котором следующие друг за другом комбинации битов отражают последовательность символов в ис­ходном тексте.

В ранний период развития компьютерной технологии было разработано много подобных кодов, причем каждый из них использовался в различных элементах оборудования. Это привело к появлению ряда проблем, связанных с передачей информации. Во избежание этих проблем Американский национальный инсти­тут стандартов (American National Standards Institute, ANSI) принял американ­ский стандартный код для обмена информацией (American Standard Code for Information Interchange, ASCII), который приобрел очень большую популярность. В этом коде комбинации двоичных разрядов дли­ной семь бит используются для представления строчных и прописных букв анг­лийского алфавита, знаков пунктуации, цифр от 0 до 9, а также кодов управле­ния передачей информации (перевод строки, возврат каретки и табуляция). В наше время код ASCII часто употребляется в расширенном восьмиразрядном формате, который получается посредством добавления нуля в старший конец каждого семиразрядного кода. Благодаря этому можно получить не только ко­ды, размер которых соответствует типичной однобайтовой ячейке памяти, но и 128 новых дополнительных комбинаций двоичных разрядов (которые получают­ся в результате добавления в старший конец бита со значением 1). Это позволяет представлять символы, не поддерживаемые исходной версией кода ASCII. К сожалению, из-за того, что фирмы-разработчики широко использовали собствен­ные варианты толкования этих дополнительных кодов, данные, представленные в этих кодах, оказалось не так-то просто переносить с одной программы в дру­гую, особенно если эти программы были разработаны разными фирмами.

Несмотря на то, что ASCII — это один из наиболее широко используемых кодов, сегодня растет популярность кодов с более широкими возможностями, которые способны представлять документы на разных языках. Одним из них является Unicode, который был разработан в результате объединенных уси­лий нескольких ведущих фирм-производителей программного и аппаратного обеспечения. В этом коде для представления каждого символа используется уникальная комбинация из 16 двоичных разрядов. В результате кодировка Unicode включает 65 536 различных двоичных кодов, что вполне достаточно даже для представления всех широко употребляемых китайских и японских символов. Международная организация по стандартизации (International Organization for Standardization, часто именуемая ISO, от греческого isos — одинаковый) разработала код, способный соперничать даже с кодировкой Unicode. Здесь для выражения символов используются комбинации из 32 бит, в результате чего этот код позволяет представить более 17 миллионов символов. Будущее покажет, какой из двух кодов приобретет большую популярность.

 



Поделиться:


Последнее изменение этой страницы: 2016-04-21; просмотров: 170; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.80.211.101 (0.008 с.)