Компьютер имеет оперативную память 2 гб. сколько картинок размером 1024х256 можно поместить в памяти этого компьютера, если цветовая палитра 256 цветов?
При использовании 256 цветов для хранения одной точки требуется log(2)256 = 8 бит = 1 байт. Память для одной картинки: 1024*256*1 байт = 1024*256/1024 Кбайт = 256 Кбайт 2 Гбайта = 2*1024 Мбайт = 2*1024*1024 Кбайт Количество картинок = 2*1024*1024/256 = 8192
Носитель информации - это любой материальный объект, используемый для закрепления и хранения на нем информации. В современном обществе можно выделить три основных вида носителей информации: 1) бумажный; 2) магнитный; 3) оптический. Бумажные носители информации. Одним из самых распространенных носителей информации является бумага. В школе мы записываем информацию в тетради, теоретический материал изучаем по учебникам, при разработке доклада, реферата или другого сообщения необходимые сведения мы находим в других источниках (книгах, энциклопедиях, словарях и т. д) , которые в свою очередь являются бумажными носителями информации Первые вычислительные машины работали на перфокартах. Перфокарты делали из плотной бумаги- картона, на которые по определенному правилу с специального «станка» - перфоратора наносили отверстия в виде небольших дырочек. Магнитные носители информации В 1928 году была изготовлена первая магнитная лента. Наши бабушки и дедушки слушали музыку на магнитофонах с магнитной лентой, которую называли «Бабина» . Магнитная лента оказалась достаточно надежным, долговечным и доступным каждому носителем информации. В первых ЭВМ (электронно- вычислительных машинах) информация хранилась на магнитных лентах и магнитных дисках В современных компьютерах в качестве носителя информации используются следующие магнитные носители : 1) дискета (на которую можно поместить данные 3000 перфокарт) . . Внутри пластмассового корпуса расположен гибким магнитный диск, поверхность которого покрыта специальным магнитным веществом. Информация записывается на обе его поверхности. Чтобы при работе с дискетой ее не надо было переворачивать, внутри флоппи-дисковода (устройства, которое записывает или считывает информацию с дискеты) имеется две магнитные головки, каждая для своей стороны дискеты. Такой диск требует особого обращения, магниты, повышенная температура и влажность разрушают хранящуюся на нем информацию. 2) жесткий магнитный диск или винчестер ( хранит 100 000 и более дискет) . Внутри жесткого металлического корпуса находятся несколько десятков дисков магнитных дисков, размещенных на одной оси . Запись или считывание информации обеспечивается несколькими магнитными головками. В целях сохранения информации и работо жесткие магнитные диски необходимо оберегать от ударов и резких изменений положений системного блока (нельзя наклонять и переворачивать в процессе работы) . 3) стриммеры (стрим-картриджи) - устройства, обеспечивающие запись или считывание звуковой информации . Внутри данного носителя находится магнитная лента. Оптические носители информации Самым распространенными носителями информации являются оптические или лазерные диски . Лазерные диски изготавливают из пластмассы, сверху покрывают тонким слоем из металла и прозрачным лаком, защищающим от незначительных царапин или загрязнений. Запись или считывание информации в CD-дисководе осуществляется с света лазера. При записи лазерный луч выжигает на поверхности диска микроскопические углубления, кодируя тем самым информацию (при считывании -лазерный луч отражается от поверхности вращающегося диска) . Такие диски следует оберегать от пыли и царапин. Различают CD и DVD диски.
Переменные в программе дают возможность обращаться к областям в памяти компьютера с удобных имен - это упрощает написание, отладку и модификацию программы. Получив описание переменной, современный транслятор (непринципиально, будет это компилятор или интерпретирующая программа) должен отвести под эту переменную область памяти, достаточную для размещения в ней данных и впоследствии учитывать тип переменной, делая, при необходимости, неявные преобразования типа. Ранние языки программирования не допускали неявных преобразований, т.е. преобразований, которые выполняются без участия программиста. Пример таких языков - Fortran II. В этом языке нельзя было смешивать в одном операторе переменные разных типов. Кстати, о типе переменных. Существуют разные классификации, но для понимания самой концепции типов непринципиально, какой классификацией пользоваться. Если говорить упрощенно, можно различать числовые и нечисловые данные. С числовыми можно совершать математические операции, а нечисловые можно только вводить в компьютер (например, с клавиатуры) и выводить из компьютера во внешнюю среду (например, отображать на мониторе). И вот тут самое интересное. Перед тем, как компьютер получит числовое данное, оно должно быть введено в форме нечислового. Тут-то и возникает неявное преобразование типов. Когда мы, к примеру, вводим число 25, то нажимаем клавиши "2" и "5", посылая компьютеру определенные коды. Компьютер преобразует их и получает последовательность символов "25". Это то же, что число 25? Если мы пишем 25 на бумаге, то для нас оно хоть число, хоть текст, изображающий число. А для компьютера это не так. Его система команд обрабатывает символы отдельно, числа отдельно. И хранит компьютер число 25 и символы "25" совсем по-разному. Вот поэтому мы должны описывая переменные, сообщать не только их имена, но и тип - чтобы транслятор "понял", как эти данные ему обрабатывать. Даже числовые данные неоднородны - компьютер может хранить их с разным представлением (целые, с фиксированной точкой, с плавающей точкой) и с разной разрядностью (максимальным числом цифр). И, встретив в операции два числа разного типа, транслятор должен привести их к одному - это тоже случай неявного приведения типов. Например, оно возникнет при вычислении выражения 2.5+1, потому что первое значение дробное, а второе - целое. Транслятор приведет его к 2.5+1.0.
Описание переменной должно быть сделано до её первого использования в программе. Обычно стараются вынести все описания в начало программы - при изучении текста чужой программы так легче найти нужное описание. Это характерно для "классических" языков программирования типа Pascal. Описание переменных в этом языке делается в разделе, который начинается ключевым словом var (от английского слова variable - переменная). Альтернативой является описание в месте, непосредственно предшествующем первому использованию переменной - это облегчает первичное написание программы, когда заранее сложно сказать, какие переменные понадобятся - особенно этим любят пользоваться программисты на языках С/С++, хотя и в этом языке есть возможность описать переменные в начале программы.
Примеры описания одних и тех же переменных: a) Pascal var a:integer; b1, b134, delta: real; weight: array[1..n] of integer;
б) С/С++ int a; single b1, b134, delta; int weight[n+1];
в) BASIC DIM a AS INTEGER DIM b1 AS REAL, b134 AS REAL, delta AS REAL DIM weight(1 To N) AS INTEGER
Память для одной картинки:
1024*256*1 байт = 1024*256/1024 Кбайт = 256 Кбайт
2 Гбайта = 2*1024 Мбайт = 2*1024*1024 Кбайт
Количество картинок = 2*1024*1024/256 = 8192