Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
А - положительное, а В — отрицательное, по модулю больше А.Стр 1 из 5Следующая ⇒
Сложение в обратных кодах А - положительное, а В — отрицательное, по модулю больше А. В этом случае мы просто складываем числа А и В. Результат получаем, как обычно, в обратном коде: 1310 = 0000 11012 (ПК/ОК) − 2310 = 1001 01112 (ПК) = 1110 10002 (ОК) (13 + (− 23))10 = 1111 01012 (ОК) = 1000 10102 (ПК) = − 1010 А — положительное, а В — отрицательное, по модулю меньше А. На первый взгляд, кажется, что этот случай не отличается от рассмотренного выше второго, однако, давайте посмотрим, что же получится в итоге: − 1310 = 1000 11012 (ПК) = 1111 00102 (ОК) 2310 = 0001 01112 (ПК) Обратите внимание на результат. У нас выходит, будто сумма — отрицательное число (ибо в знаковом разряде единица), причем, цифр также больше. И, даже если бы не будем учитывать знак, а просто переведем модуль, то получим 910, а не 1010, как должно быть. Компьютер решает эту проблему, прибавляя получившуюся «лишнюю» единицу к получившемуся числу. Выглядит это следующим образом: Как видите, в результате мы получили положительное число 0000 10102, переведя которое в десятичную систему счисления мы получим 1010. А это и есть правильный ответ. А и В отрицательные числа. При таких условиях нам точно так же, как и в третьем случае, придется прибавлять единицу из знакового разряда к основному числу. Проверим: − 1310 = 1000 11012 (ПК) = 1111 00102 (ОК) − 2310 = 1001 01112 (ПК) = 1110 10002 (ОК) Переведем получившийся обратный код в десятичное число: 1101 10112 (ОК) = 1010 01002 (ПК) = − 3610. Как мы видим, ответ получился верным. Однако, не всегда сложение проходит так гладко. Если вдруг числа у нас достаточно большие, то может возникнуть переполнение, то есть, результат не будет помещаться в выделенное для него место в памяти. Как вам понять, что возникло переполнение? Конечно, можно перевести число в десятичную систему счисления и проверить, больше ли модуль этого числа, чем максимально возможный. Однако, есть и другой способ. Если знак результата получается не таким, какой вы ожидали (не такой, как в примерах выше), значит, произошло переполнение. К слову, «максимально возможный модуль» для чисел со знаком равен 2n-1, где n — количество бит, отведенных для хранения числа. Напомню, что в 1 байте 8 бит, в 2 байтах 16 бит и так далее. Получается, что если на хранение числа у вас отводится один байт, то максимально возможный модуль это 28-1 = 27 = 128. Если число у вас получается по модулю больше, значит, для операции требуется выделить на слагаемые больше памяти. Отмечу, что переполнение может возникнуть только в том случае, когда оба числа положительны или отрицательны, ибо, когда знаки у них разные, модуль результата будет меньше как минимум одного слагаемого. 4. Локальные вычислительные сети. локальные вычислительные сети – ЛВС (LAN – Local Area Networks) – компьютерные сети, расположенные в пределах небольшой ограниченной территории ( здании или в соседних зданиях) не более 10 – 15 км;
Локальные вычислительные сети обеспечивают:
2. Распределение информационных и технических ресурсов (Resource Sharing): логические диски и другие внешние запоминающие устройства (накопители на CD-ROM, DVD, ZIP и так далее);
каталоги (папки) и содержащиеся в них файлы;
подключенные к ПК устройства: принтеры, модемы и другие внешние устройства (позволяет экономно использовать ресурсы, например, печатающие устройства, модемы). 3. Распределение программ (Software Sharing). Все пользователи локальных вычислительных сетей могут совместно иметь доступ к программам (сетевым версиям), которые централизованно устанавливаются в сети. 4. Обмен сообщениями по электронной почте (Electronic Mail). Все пользователи сети могут оперативно обмениваться информацией между собой посредством передачи сообщений. Локальные вычислительные сети, в зависимости от способов взаимодействия компьютеров в них, можно разделить на централизованные и одноранговые сети. Централизованные локальные сети строятся на основе архитектуры " клиент-сервер", которая предполагает выделение в сети " серверов" и " клиентов". Одноранговые ЛВС основаны на равноправной (peer-to-peer) модели взаимодействия компьютеров, в которой каждый компьютер может быть как сервером, так и клиентом. Локальные вычислительные сети могут отличаться архитектурой (Ethernet, Token Ring, FDDI и т.д.) и топологией (шинная, кольцевая, “звезда”). Выбор типа ЛВС зависит от потребностей пользователей и финансовых возможностей предприятия.
5. Глобальные вычислительные сети. Глобальные вычислительные сети Wide Area Networks (WAN), которые относятся к территориальным компьютерным сетям, предназначены, как и ЛВС для предоставления услуг, но значительно большему количеству пользователей, находящихся на большой территории. Глобальные вычислительные сети - это компьютерные сети, объединяющие локальные сети и отдельные компьютеры, удаленные друг от друга на большие расстояния. Самая известная и популярная глобальная сеть - это Интернет. Кроме того, к глобальным вычислительным сетям относятся: всемирная некоммерческая сеть FidoNet, CREN, EARNet, EUNet и другие глобальные сети, в том числе и корпоративные. Из-за большой протяженности каналов связи построение требует очень больших затрат, поэтому глобальные сети чаще всего создаются крупными телекоммуникационными компаниями для оказания платных услуг абонентам. Такие сети называют общественными или публичными. Но в некоторых случаях WAN создаются как частные сети крупных корпораций. Абонентами WAN могут быть ЛВС предприятий, географически удаленные друг от друга, которым нужно обмениваться информацией между собой. Кроме того, отдельные компьютеры могут пользоваться услугами WAN для доступа, как к корпоративным данным, так и к публичным данным Internet. Компании, осуществляющие поддержку функционирования сети, называются операторами сети, а компании, предоставляющие платные услуги абонентам сети, называются провайдерами или поставщиками услуг. В глобальных сетях для передачи информации применяются следующие виды коммутации: коммутация каналов (используется при передаче аудиоинформации по обычным телефонным линиям связи);
коммутация сообщений (применяется в основном для передачи электронной почты, в телеконференциях, электронных новостях); коммутация пакетов (для передачи данных, в последнее время используется также для передачи аудио - и видеоинформации). Большой интерес представляет глобальная информационная сеть Интернет. Интернет объединяет множество различных компьютерных сетей (локальных, корпоративных, глобальных) и отдельных компьютеров, которые обмениваются между собой информацией по каналам общественных телекоммуникаций. Практически все услуги Internet построены на принципе клиент-сервер. Вся информация в Интернет хранится на серверах. Обмен информацией между серверами сети осуществляется по высокоскоростным каналам связи или магистралям. К таким магистралям относятся: выделенные телефонные аналоговые и цифровые линии, оптические каналы связи и радиоканалы, в том числе спутниковые линии связи. Серверы, объединенные высокоскоростными магистралями, составляют базовую часть Интернет. Отдельные пользователи подключаются к сети через компьютеры местных поставщиков услуг Интернета, Internet - провайдеров (Internet Service Provider - ISP), которые имеют постоянное подключение к Интернет. Региональный провайдер, подключается к более крупному провайдеру национального масштаба, имеющего узлы в различных городах страны. Сети национальных провайдеров объединяются в сети транснациональных провайдеров или провайдеров первого уровня. Объединенные сети провайдеров первого уровня составляют глобальную сеть Internet
6. Протоколы и услуги ГВС. Все протоколы глобальных сетей предназначены для организации обмена информацией и реализации серверных возможностей. Различные транспортные протоколы, протоколы маршрутизации и межсетевого взаимодействия, сервисные протоколы, протоколы высокого уровня. Основу транспортных протоколов для топологии Ethernet составляют TCP, UDP, для физического подключения по коммутируемым и выделенным телефонным линиям IP, CSIZP, протокол маршрутизации RIP. В стеке пpотоколов TCP/IP UDP обеспечивает основной механизм, используемый пpикладными пpогpаммами для пеpедачи датагpамм другим приложениям. UDP предоставляет протокольные поpты, используемые для pазличения нескольких пpоцессов, выполняющихся на одном компьютеpе. Помимо посылаемых данных каждое UDP-сообщение содеpжит номеp поpта-пpиемника и номеp поpта-отпpавителя, делая возможным для программ UDP на машине-получателе доставлять сообщение соответствующему реципиенту, а для получателя посылать ответ соответствующему отправителю. UDP использует Internet Protocol для пеpедачи сообщения от одной мащины к дpугой и обеспечивает ту же самую ненадежную доставку сообщений, что и IP. UDP не использует подтвеpждения пpихода сообщений, не упоpядочивает пpиходящие сообщения и не обеспечивает обpатной связи для управления скоростью передачи инфоpмации между машинами. Поэтому, UDP-сообщения могут быть потеpяны, pазмножены или пpиходить не по поpядку. Кpоме того, пакеты могут пpиходить pаньше, чем получатель сможет обpаботать их. В общем можно сказать, что: UDP обеспечивает ненадежную службу без установления соединения и использует IP для тpанспоpтиpовки сообщений между машинами. Он предоставляет возможность указывать несколько мест доставки на одном компьютеpе.
IP - базовый протокол межсетевого взаимодействия. В глобальной сети при наличии шлюзов он становится объединяющим и интегрирующим протоколом, через который осуществляется прямая и косвенная маршрутизация пакетов. Прямая - 1 локальная сеть, косвенная - через другие сети. При необходимости IP дробит пакеты. Основное свойство - наличие таблицы соответствия адресов - имен и физических интерфейсов.
TCP - Transmission Control Protocol - предназначен для доставки пакетов, называемых сегментами. Улучшены механизмы контроля целостности и работы в окнах (пакет уже отправлен, а подтверждение еще не получено). Аналогичен работе UDP, но, в отличие от UDP, режим использования порта полнодуплексный. Все данные разбиваются на пакеты, все отправления пакетов подтверждаются при приеме. Используется в таких сервисах, как FTP, SMTP, TelNet.
RIP - Routing Internet Protocol - специализация протокола - определять как и когда будет обновляться таблица маршрутов. Шлюзы и маршрутизаторы по характеру отношения к таблице делятся на активные (посылают) и пассивные (принимают таблицы маршрутизации для обновления собственных). Использовать протокол RIP в активном режиме может только маршрутизатор, узел сети должен работать в пассивном режиме Маршрутизатор, поддерживающий протокол RIP в активном режиме, каждые 30 секунд рассылает в широковещательном режиме сообщения об обновлении маршрутной информации. В этом сообщении содержится текущая информация, полученная из локальной таблицы маршрутизатора. Каждое сообщение об обновлении состоит из набора парных значений. В каждой из пар указывается IP-адрес сети и расстояние до этой сети, выраженное целым числом(обычно количество хопов). Для измерения расстояний в протоколе RIP используется принцип подсчета количества переходов. Согласно принятой в протоколе RIP системе измерений, маршрутизатор находится на расстоянии одного перехода от непосредственно подключенной в нему сети, на расстоянии двух переходов — от сети, доступ к которой можно получить через другой маршрутизатор, и т.д. Таким образом, количество переходов или счетчик числа переходов по маршруту от отправителя до получателя указывает на количество маршрутизаторов, через которые проходит дейтаграмма, следующая по этому маршруту. Максимальное количество транзитов для RIP = 15. Значение 16 устанавливается для недостижимых сетей. Само собой разумеется, что вычисление кратчайших маршрутов методом подсчета количества переходов не всегда дает оптимальный результат. В современных сетевых средах RIP — не самое лучшее решение для выбора в качестве протокола маршрутизации, так как его возможности уступают более современным протоколам, таким как EIGRP, OSPF. Ограничение на 15 хопов не дает применять его в больших сетях. Преимущество этого протокола — простота конфигурирования. ARP. В локальных сетях, имеющих подключение к Internet-шлюзу, любой сетевой интерфейс имеет физический адрес, действующий в рамках локальной сети. При замене интерфейса или при перемещении машины в другую подсеть возникает проблема со старой адресацией. Для устранения этого существует внутрисетевой протокол преобразования IP-адресов в сетевые для данной топологии. Это преобразование осуществляется на основании ARP-таблиц, описывающих соответствие адресов интерфейсов для каждого компьютера и каждого интерфейса. RARP. При стандартной конфигурации сервера IP-адреса хранятся на локальных носителях и считываются в память во время загрузки. Иногда возникает проблема определения или выделения IP-адреса. Возможны 2 решения: 1) записывать IP-адреса в ПЗУ сетевой карты и определять динамически; 2) RARP по аппаратному адресу определяет IP-адрес. ICMP. Контролирует ошибочное состояние среды. Функции: диагностика сетевой среды, сообщение о некорректности передачи информации.ICMP использует IP для выдачи диагностических запросов, затем диагностирует IP. SNMP управляет работой на основе UDP и IP, используется в глобальных сетях серверами-шлюзами или серверами локальных сетей. По данному протоколу все объекты разделены на 10 групп и описаны в БД MIB. Для успешного администрирования сети необходимо знать состояние каждого ее элемента с возможностью изменять параметры его функционирования. Обычно сеть состоит из устройств различных производителей и управлять ею было бы нелегкой задачей если бы каждое из сетевых устройств понимало только свою систему команд. Поэтому возникла необходимость в создании единого языка управления сетевыми ресурсами, который бы понимали все устройства, и который, в силу этого, использовался бы всеми пакетами управления сетью для взаимодействия с конкретными устройствами. Подобным языком стал SNMP - Simple Network Management Protocol. Разработанный для систем, ориентированных под операционную систему UNIX, он стал фактически общепринятым стандартом сетевых систем управления и поддерживается подавляющим большинством производителей сетевого оборудования в своих продуктах. В силу своего названия - Простой Протокол Сетевого Управления - основной задачей при его разработке было добиться максимальной простоты его реализации. В результате возник протокол, включающий минимальный набор команд, однако позволяющий выполнять практически весь спектр задач управления сетевыми устройствами - от получения информации о местонахождении конкретного устройства, до возможности производить его тестирование. Основной концепцией протокола является то, что вся необходимая для управления устройством информация хранится на самом устройстве - будь то сервер, модем или маршрутизатор - в так называемой Административной Базе Данных ( MIB - Management Information Base ). MIB представляет из себя набор переменных, характеризующих состояние объекта управления. Эти переменные могут отражать такие параметры, как количество пакетов, обработанных устройством, состояние его интерфейсов, время функционирования устройства и т.п. Каждый производитель сетевого оборудования, помимо стандартных переменных, включает в MIB какие-либо параметры, специфичные для данного устройства. Однако, при этом не нарушается принцип представления и доступа к административной информации - все они будут переменными в MIB. Поэтому SNMP как непосредственно сетевой протокол предоставляет только набор команд для работы с переменными MIB. Этот набор включает следующие операции:
Для того, чтобы проконтролировать работу некоторого устройства сети, необходимо просто получить доступ к его MIB, которая постоянно обновляется самим устройством, и проанализировать значения некоторых переменных. Важной особенностью протокола SNMP является то, что в нем не содержатся конкретные команды управления устройством. Вместо определения всего возможного спектра таких команд, безусловно загромоздившего бы сам протокол, который считается все-таки простым, определены переменные MIB, переключение которых воспринимается устройством как указание выполнить некоторую команду. Таким образом удается сохранить простоту протокола, но вместе с этим сделать его довольно мощным средством, дающим возможность стандартным образом задавать наборы команд управления сетевыми устройствами. Задача обеспечения выполнения команд состоит, таким образом, в регистрации специальных переменных MIB и реакции устройства на их изменения. SLIP используется для подключения удаленных машин по выделенным линиям через com-порты и модемы. Дробление пакетов перед трансляцией и склеивание после. Не анализируется поток данных и не позволяет осуществлять манипуляции с адресами. Является IP-ориентированным, по внутренней идеологии является клиент-сервер-ориентированным. Коррекции ошибок не имеет. Это Internet -протокол, позволяющий в качестве линий связи использовать последовательные линии, например, вкупе с модемом - обычные телефонные линии. Программное обеспечение, реализующее работу с протоколом SLIP, принимает символы, приходящие с устройства последовательной передачи данных (модема, последовательного порта и т.д.). Рассматривает и толкует их как составляющие IP-пакета. Укладывает полученные данные в полнокровный нормальный IP-пакет и передает этот пакет далее - соответствующей программе, которая обрабатывает IP-пакеты, например, модулю TCP. На обратном пути SLIP получает от программы (сетевого уровня), посылающей IP-пакеты, IP-пакет, вычленяет его содержимое, соответствующим образом переформатирует, потом делит на символы и отправляет его через устройство последовательной передачи попоследовательной линии в сеть, - соседнему узлу Internet. CSLIP – аналог SLIP. Имеет возможность собирать статистику данных и контроль ошибок при помощи расчета контрольных сумм. CSLIP. Это SLIP со сжатыми заголовками. Этот протокол был создан, как способ повысить эффективность последовательной передачи и повысить уровень сервиса прикладных программ, использующих TCP/IP на медленных линиях. Протокол CSLIP использует в шесть раз меньше избыточной информации (в виде заголовков), нежели протокол SLIP. На низких скоростях передачи данных эта разница заметна только при работе с пакетами, несущими малые обемы информации, такие пакеты порождаются, например, при работе telnet или rlogin. На больших же скоростях CSLIP дает меньший выигрыш и совсем почти ничего не дает для пакетов с большими объемами данных, например, ftp-пакетов . CSLIP для сжатия-разжатия и проверки правильности пересылки пакета (и заголовка) использует информацию из предыдущего пакета, т.е. передача имеет структуру цепочки. Первый пакет в цепочке - несжатый. Если какой-либо пакет теряется, то цепочка рвется, нельзя этот же пакет запросить в самом конце передачи, его нужно пересылать заново тут же, т.е. прекращать процесс передачи и начинать новую цепочку. Таким образом, эта технология при пропаже или искажении пакетов приводит к б´ ольшим потерям времени, чем обычный SLIP. Это происходит из-за задержек на останов и передачу нового несжатого пакета).
PPP – Point to Point – протокол присоединения через последовательные порты. Осуществляет отправку и приемку, осуществляет двунаправленный обмен пакетами. Выполняет инкапсуляцию пакетов и настройку соединений, поддерживает управление сетевым соединением при помощи задания различных параметров соединения. Позволяет серверу динамически назначать IP-адрес для машины-клиента и произвести оптимальную настройку под тип транспортного протокола сети. Заложена возможность сжатия, контроля ошибок и внутренней защиты.
Собственно SLIP и PPP - это протоколы, адаптирующие IP для работы на последовательных линиях. Они представляют собой некую прокладку между IP и модемными протоколами. SLIP и PPP имеет смысл использовать вкупе со скоростными модемами на достаточно скоростных линиях. Основная функция программного обеспечения SLIP/PPP - организовать пересылку IP-пакетов по последовательной линии, которая не предусматривает деления пересылаемой информации на какие-либо отдельные блоки и пересылает все данные единым непрерывным потоком. SLIP/PPP как раз и занимается организацией такой пересылки, чтобы на другом конце можно было этот сплошной и непрерывный поток данных разделить на составляющие его IP-пакеты, выделить их и передать дальше уже как IP-пакеты.
Основные услуги глобальных сетей: электронная почта E-mail;
компьютерная телефония;
передача файлов FTP;
терминальный доступ для интерактивной работы на удаленном компьютере TELNET;
глобальная система телеконференций USENET;
справочные службы;
доступ к информационным ресурсам и средства поиска информации в Интернете.
7. Семиуровневая сетевая модель OSI.
Эталонная модель OSІ (Open System Interconnection - OSI), разработанная в 1984 году Международной организацией по стандартизации (International Organization of Standardization – ISO), является определяющим документом концепции разработки открытых стандартов для организации соединения систем. Открытая система - система, доступная для взаимодействия с другими системами в соответствии с принятыми стандартами. Семиуровневая эталонная модель “Взаимосвязь открытых систем” была разработана с целью упрощения взаимодействия устройств в сетях. Семиуровневая эталонная модель представляет собой рекомендации (разработчикам сетей и протоколов) для построения стандартов совместимых сетевых программных продуктов, и служит базой для производителей при разработке совместимого сетевого оборудования. Рекомендации стандарта должны быть реализованы как в аппаратуре, так и в программных средствах вычислительных сетей. Семиуровневая эталонная модель OSI определяет семь уровней взаимодействия систем в сетях с коммуникацией пакетов, дает им стандартные имена и указывает, какие функции должен выполнять каждый уровень. Каждый уровень функционирует независимо от выше - и нижележащих уровней. Каждый уровень может общаться с непосредственным соседним уровнем, однако он полностью изолирован от прямого обращения к следующим уровням. Семиуровневая эталонная модель OSI описывает только системные средства взаимодействия, реализуемые операционной системой, системными утилитами, системными аппаратными средствами. В соответствии с семиуровневой эталонной моделью сетевая система представляется прикладными процессами и процессами взаимодействия абонентов. Последние разбиваются на семь функциональных уровней: прикладной, представительный (уровень представления данных), сеансовый, транспортный, сетевой, канальный и физический.
1. Прикладной уровень – самый верхний уровень модели OSI. Прикладной уровень управляет общим доступом к сети, потоком данных и обработкой ошибок. Прикладной уровень получает запрос (сообщение) от сетевого приложения, работающего на компьютере ПК1, который требуется передать сетевому приложению, работающему на ПК2.
3. Сеансовый уровень позволяет двум приложениям на ПК1 и ПК2 устанавливать, использовать и завершать соединение, называемое сеансом. Сеансовый уровень обеспечивает синхронизацию между пользовательскими задачами посредством расстановки в потоке данных контрольных точек. 4. Транспортный уровень осуществляет контроль данных и гарантирует доставку пакетов без ошибок. Кроме того, транспортный уровень выполняет деление длинных сообщений, поступающих от верхних уровней ПК1, на пакеты данных (при передаче данных) и формирование первоначальных сообщений в ПК2 из набора пакетов, полученных через канальный и сетевой уровни. Транспортный уровень и уровни, которые находятся выше, реализуются программными средствами ПК1 и ПК2 (компонентами их сетевых операционных систем). Транспортный уровень связывает нижние уровни (физический, канальный, сетевой) с верхними уровнями, которые реализуются программными средствами. 5. Сетевой уровень служит для образования единой транспортной системы, объединяющей несколько сетей, которые могут иметь различные принципы передачи сообщений. Внутри сети доставка данных обеспечивается соответствующим канальным уровнем, а доставку данных между сетями выполняет сетевой уровень. Сетевой уровень реализуется программными модулями операционной системы, программными и аппаратными средствами маршрутизаторов. 6. Канальный уровень обеспечивает пересылку пакетов между любыми двумя ПК локальной сети. Кроме того, канальный уровень осуществляет управление доступом к передающей среде. Функции канального уровня реализуются сетевыми адаптерами и их драйверами. 7. Физический уровень обеспечивает физический путь для электрических сигналов, несущих информацию. Этот уровень характеризует параметры физической среды передачи данных. Физический уровень определяет характеристики электрических сигналов, передающих дискретную информацию, типы разъемов и назначение каждого контакта. Как правило, функции физического уровня реализуются сетевым адаптером или портом. В вычислительных сетях, как правило, применяются наборы протоколов, а не все функциональные уровни модели взаимодействия открытых систем. Набор протоколов, достаточный для организации взаимодействия оборудования в сети, называется стеком коммуникационных протоколов. При запуске на компьютере любого приложения, для функционирования которого требуется диалог с сетью, это приложение вызывает соответствующий протокол прикладного уровня сетевого программного обеспечения. Прикладной уровень формирует сообщение стандартного формата. Обычно сообщение состоит из заголовка и поля данных. Заголовок содержит служебную информацию, которую необходимо передать через сеть прикладному уровню компьютера-адресата, чтобы сообщить ему, какую работу надо выполнить. Поле данных содержит данные, необходимые для выполнения этой работы. После формирования сообщения прикладной уровень направляет его вниз к представительному уровню. Представительный уровень, на основании информации, полученной из заголовка прикладного уровня, выполняет требуемые действия и добавляет к сообщению собственную служебную информацию – заголовок представительного уровня, в котором содержатся указания для представительного уровня машины-адресата. Полученное сообщение отправляется вниз сеансовому уровню, который добавляет свой заголовок и т.д. до физического уровня, который передает сформированное сообщение по линиям связи. К этому моменту сообщение имеет заголовки всех уровней. Когда сообщение поступает в компьютер - адресат, оно принимается физическим уровнем и последовательно передается вверх с уровня на уровень. Причем каждый уровень анализирует и обрабатывает заголовок своего уровня, выполняя соответствующие данному уровню функции, а затем удаляет этот заголовок и передает сообщение вышележащему уровню.
8. Представление данных в ЭВМ.
Современные ЭВМ реализованы на электронных элементах (триггерах), имеющих два устойчивых состояния (типа включен/выключен). Эти состояния кодируются – одно обозначается “0”(ноль), другое – “1” (единица). Таким образом, язык ЭВМ содержит только два символа. Это в свою очередь, вынуждает для представления данных в ЭВМ использовать специальные коды.
Под кодированием понимается переход от исходного представления информации, удобного для восприятия информации человеком, к представлению, удобному для хранения, передачи и обработки. Информация в памяти ЭВМ записывается в виде цифрового двоичного кода. Основной и неделимой единицей данных является бит. Бит может принимать два значения — 0 и 1 — ложь или истина, выключено или включено.
Компьютер не работает с отдельными битами, обычно он оперирует группами битов, например, группа из восьми битов образует базовый тип данных, который называется байтом. Восемь битов в байте — это не закон природы, а количество, произвольно выбранное разработчиками IBM, создававшими первые компьютеры. Большие группы битов называются словом (word) или двойным словом (dword — double word).Относительно PC-совместимых компьютеров мы можем сказать следующее: 1 байт = 8 бит 1 слово (word) = 2 байта = 16 бит 1 двойное слово (dword) = 4 байта = 32 бит
Для чисел имеется три числовых формата:
В двоичном формате с фиксированной точкой числа могут быть представлены без знака (коды) или со знаком. Для представления чисел со знаком в современных ЭВМ в основном применяется дополнительный код. Это приводит к тому, что отрицательных чисел при заданной длине разрядной сетки можно представить на одно больше, чем положительных. Хотя операции в ЭВМ осуществляются над двоичными числами, для записи их в языках программирования, в документации и отображения на экране дисплея часто используют более удобное восьмеричное, шестнадцатеричное и десятичное представление. В двоично-кодированном десятичном формате каждая десятичная цифра представляется в виде 4 битного двоичного эквивалента. Существуют две основные разновидности этого формата: упакованный и неупакованный. В упакованном BCD -формате цепочка десятичных цифр хранится в виде последовательности 4-битных групп. Например, число 3904 представляется в виде двоичного числа 0011 1001 0000 0100. В неупакованном BCD -формате каждая десятичная цифра находится в младшей тетраде 8-битной группы (байте), а содержимое старшей тетрады определяется используемой в данной ЭВМ системой кодирования, и в данном случае несущественно. То же число 3904 в неупакованном формате будет занимать 4 байта и иметь вид: xxxx0011 xxxx1001 xxxx0000 xxxx0100. Числа с плавающей запятой обрабатываются на специальном сопроцессоре ( FPU - floating point unit ), который, начиная с МП I486, входит в состав БИС (большая интегральная схема) микропроцессора. Данные в нем хранятся в 80-разрядных регистрах. Управляя настройками сопроцессора, можно изменять диапазон и точность представления данных этого типа. В языках программирования высокого уровня есть специальные типы данных, позволяющие хранить символы и строки. В языке ассемблера таких типов данных нет. Вместо них для представления одного символа используется байт, а для представления строки — группа последовательных байтов. Тут все просто. Каждое значение байта соответствует одному из символов ASCII-таблицы (American Standard Code for Information Interchange). Первые 128 символов — управляющие символы, латинские буквы, цифры — одинаковы для всех компьютеров и операционных систем. Шестнадцатеричные цифры в заголовках строк и столбцов таблицы представляют числовые значения отдельных символов. Например, координаты заглавной латинской буквы А — 40 и 01. Сложив эти значения, получим 0x41 (то есть 65 в десятичной системе) — код символа 'А' в ASCII-коде. Печатаемые символы в ASCII-таблице начинаются с кода 0x20 (или 32d). Символы с кодом ниже 32 представляют так называемые управляющие символы. Наиболее известные из них — это ОхА или LF — перевод строки, и OxD — CR — возврат каретки. Важность управляющих символов CR и LF обусловлена тем, что они обозначают конец строки — тот символ, который в языке программирования С обозначается как \п. К сожалению, в различных операционных системах он представляется по-разному: например, в Windows (и DOS) он представляется двумя символами (CR, LF — OxD, ОхА), а в операционной системе UNIX для обозначения конца строки используется всего один символ (LF — ОхА). Символы с кодами от 128 до 256 и выше стали «жертвами» различных стандартов и кодировок. Обычно они содержат национальные символы, например, у нас это будут символы русского алфавита и, возможно, некоторые символы псевдографики, в Чехии — символы чешского алфавита и т.д. Следует отметить, что для русского языка используются кодировки СР 866 (в DOS) и СР 1251 (Windows).
9. Представление команд в ЭВМ. Команда (инструкция) – элемент программы, приводящий к выполнению определенных действий. Команда представляет собой код, содержащий информацию, необходимую для управления машинной операцией. Под операцией понимают преобразование информации, выполняемое машиной под воздействием одной команды. Содержанием машинной операции может быть запоминание, передача, арифметическое и логическое преобразование некоторых машинных слов (операндов).
Формат команды – количество и интерпретация разрядов, представляющих машинную команду. Команда состоит из операционной и адресной частей. Операционная часть содержит код операции (КОП), т.е. некоторое число, которое задает вид операции (сложение, умножение, передача и т.д.). Адресная часть команды содержит информацию об адресах операндов и результатах операции, а в некоторых случаях информацию об адресе следующей команды. ( Если ЭВМ выполняет М разли Популярное:
|
Последнее изменение этой страницы: 2016-03-25; Просмотров: 1080; Нарушение авторского права страницы