русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Внешние сигналы микропроцессора.


Дата добавления: 2015-09-15; просмотров: 2857; Нарушение авторских прав


 

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

В первом типе устройств управления процессом об­работки информации все п управляющих входов АЛУ объединяются в n-разрядную шину, на которую для вы­полнения того или иного действия над данными на каж­дом шаге программы подается n-разрядная микрокоман­да. Единичное или нулевое значение i-го разряда микро­команды обеспечивает соответственно выработку или от­сутствие i-го управляющего сигнала. Этими устройствами организации управления может быть реализован любой алгоритм выполнения программы.

Рассмотренный способ управления называется микро­программным, структурная схема его приведена на рис. 5.1, а.

Рис. 5.1 Микропрограммная (а) и жесткая (б) схемы органи­зации управления

процессом обработки информации

 

В состав устройства управления выполнением опера­ций (УУВО) входят управляющее запоминающее уст­ройство (ЗУ), дешифратор микрокоманд и схема управ­ления их выполнением. В управляющем ЗУ для всех ви­дов команд хранится набор составляющих их микро­команд (МК), называемый микропрограммой. Последо­вательная выборка микрокоманд из управляющего ЗУ и их выполнение обеспечивает обработку информации, соответствующую коду команды. Сначала команда по­дается на вход управляющего ЗУ. Происходит выборка первой МК микропрограммы, относящейся к этой коман­де, которая поступает на дешифратор МК и схему управ­ления ее исполнением. Всякая микрокоманда состоит из двух частей: операционной, которая определяет вид дей­ствий, и адресной, которая обеспечивает формирование адресной части следующей МК.



Дешифратор расшифровывает код операционной час­ти, вырабатывает управляющие сигналы, которые по­даются на обрабатывающую часть МП. Схема управле­ния выполнением МК по коду адресной части МК и признакам условий, которые вырабатываются обрабатыва­ющей частью микропроцессора, формирует адрес следую­щей МК, подаваемый на управляющее ЗУ. После выпол­нения всех микрокоманд, образующих команду, выраба­тывается сигнал выборки следующей команды.

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

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

В отличие от микропрограммного управления дешиф­ратор команд и схема управления их выполнением не только расшифровывают код команды, но и вырабаты­вают нужную последовательность управляющих сигналов в течение нескольких тактов работы АЛУ, необходимых для выполнения команды. Обращение к следующей команде происходит после выполнения предыдущей по адресу, определяемому признаками условий, вырабаты­ваемыми АЛУ. Жесткость - невозможность введения новой команды без существенного изменения схемы МП и сложность структуры этого типа управления являет­ся основным его недостатком, а высокое быстродейст­вие - главным преимуществом.

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

Для выполнения этих функций в МП должны быть предусмотрены специальные устройства: программный счетчик (ПС), который хранит текущий адрес команды; регистр команд (РК), предназначенный для приема и хранения поступающих из ЗУК команд; схема выдачи адресов команд и содержимого ПС на адресную шину МП; схемы приема данных и команд с внешней шины данных на РК. Структура МП, содержащая все указан­ные устройства, представлена на рис. 5.2. В МП имеются две шины данных: А и В. Адрес команды, подлежащей выполнению, хранится в программном счетчике (ПС). Отсюда он поступает через блок усилителей буфера ад­реса (БА) на шину адреса и по ней — на адресные входы ЗУК.

Рис. 5.2. Структура микропроцессора с обрабатывающей и

управляющей частями

 

Команда, выбранная на ЗУК, поступает на буфер данных (БД), а затем на регистр команд (РгК). Код команды расшифровывается дешифратором команд (ДшК), который анализирует отдельные поля команды и передает код выполняемой операции в УУВО. Последний вырабатывает последовательность управляющих сигна­лов, соответствующую коду операции, которая обеспе­чивает выполнение нужных действий обрабатывающей частью микропроцессора.

Если в процессе выполнения команды требуется об­ращение к РОН, то ДшК выдает адрес требуемого ре­гистра в блоке РОН. Если Для выполнения команды следует обратиться к внешнему по отношению к МП запоминающему устройству, то соответствующий адрес поступает на шину адреса через БА. В процессе выпол­нения команды содержимое программного счетчика (ПС) изменяется: в нем формируется адрес следующей команды.

Рассмотренные структуры обрабатывающей и управ­ляющей частей предполагают наличие двух внутренних шин: А и В (рис. 5.2). Существуют микропроцессоры с одной, двумя и тремя внутренними шинами. Количество шин существенно влияет на структуру и характеристи­ки МП.

Рис 5.3. Структура обрабатывающей части микропроцессора с трех-(а) и одношинной (б) организацией

 

При трехшинной организации МП (рис. 5.3, а) воз­можно выполнение логических и арифметических опера­ций за один такт работы МП. Так, при выполнении команды «сложить содержимое регистров Рг1 и Рг2, ре­зультат поместить в регистр РгЗ» в течение одного так­та работы процессора содержимое Рг1 по шине А посту­пает в АЛУ, где складывается с содержимым регистра Рг2, поступившим в АЛУ по шине В. Результат сложе­ния по шине С записывается в регистр РгЗ.

При двухшинной организации МП (см. рис. 5.2) та же команда будет выполняться за два такта: такт 1 - загрузка РгБ содержимым регистра Рг1; такт 2-за­грузка РгСдв содержимым Рг2, сложение в АЛУ данных, занесенных в РгБ и РгСдв, и засылка результата в регистр РгЗ.

Возможна одношинная организация МП (рис. 5.3, б). Однако выполнение операций в таком МП усложняется, усложняется также и архитектура МП прежде всего за счет введения дополнительных буферных регистров. Рас­смотренная выше команда в МП с одношинной органи­зацией выполняется уже за три такта: такт 1 - загрузка РгБ содержимым регистра Рг1; такт 2 - загрузка РгСдв содержимым регистра Рг2; такт 3 - сложение данных, содержащихся в РгБ и РгСдв, и запись результата в регистр РгЗ.

Основной недостаток трехшинной организации - большая площадь, занимаемая шинами на кристалле микросхемы МП. Так, при одношинной организации МП площадь, занимаемая шиной, составляет 3-10% всей площади кристалла, при двухшинной -6-20%, при трехшинной - 16-25%.

 

Шины. При вставке в разъем материнской платы контроллер под­ключается к шине — магистрали передачи данных между оперативной памятью и контроллерами. Шины расширения обычных ПК конструктивно оформляются в виде щелевых разъемов (слотов) на системной плате. На современных материнских платах существуют два вида слотов расширения: PCI, AGP, ранние модели оснащались разъемом расширения ISA.

Шина ISA (Industry Standard Architecture – стандартная промышленная архитектура) для контроллеров низкоскоростных устройств (то есть для обмена данными с клавиатурой, мышью, дисководами для дискет, модемом, звуковой картой и т.д.).

Шина PCI (Peripheral Component Interconnect – связь периферийного оборудования) для обмена данными с высокоскоростными устройствами — (жесткими дисками, видеоконтроллером и т.д.). Этот разъем был выпущен фирмой Intel в 1993г.

Шина AGP (Accelerated Graphics Port – ускоренный графический порт). Этот разъем также был изобретен в фирме Intel, но в 1996 году, и предназначен исключительно для видеокарт. Наиболее распространенный в настоящее время разъем AGP 4х и AGP 8х. (PCI-Express, 16x)

 

Разъемы шин. Каждый контроллер может быть подключен лишь к той шине, на которую он рассчитан. Поэтому разъемы различных шин сделаны разными, чтобы их нельзя было перепутать. При покупке кон­троллеров следует знать, разъемы каких шин имеются в Вашем ком­пьютере, так как иначе купленный контроллер окажется бесполезен.

Замечание. Обычно материнская плата содержит 3-4 разъема шины ISA и 3-4 разъема шины PCI. В компактных моделях системных блоков число разъемов может быть меньше, а в компьютерах, предназначенных для использования в ка­честве серверов локальной сети — больше.

Контроллеры портов ввода-вывода. Одним из контроллеров, ко­торые присутствуют почти в каждом компьютере, является кон­троллер портов ввода-вывода. Часто этот контроллер интегрирован в состав материнской платы. Контроллер портов ввода-вывода соеди­няется кабелями с разъемами на задней стенке компьютера, через ко­торые к компьютеру подключаются принтер, мышь и некоторые другие устройства. Порты ввода-вывода бывают следующих типов:

параллельные (обозначаемые LPT1-LPT4), к соответствующим разъемам на задней стенке компьютера (имеющим 25 гнезд, обыкновенно подключаются принтеры;

последовательные (обозначаемые СОМ1-СОМЗ). К соответст­вующим разъемам на задней стенке компьюте­ра (имеющим 9 или 25 штырьков) обычно подсоединяются мышь, модем и другие устройства;

• игровой порт - к его разъему (имеющему 15 гнезд), подключается джойстик.

Как правило, контроллер портов компьютера поддерживает один параллельный и два последовательных порта.

Замечание. Параллельные порты выполняют ввод и вывод с большей скоро­стью, чем последовательные (за счет использования большего числа проводов в кабеле).

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

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

Рис.5.1 Блок-схема устройства компьютера (стрелками показаны направления передачи данных)

Арифметико-логические устройства служат для вы­полнения арифметических и логических действий над двоичными числами и алфавитно-цифровыми кодами. Все операции, выполняемые АЛУ, делятся на группы:

- операции двоичной арифметики для чисел с плавающей точкой (запятой);

- операции десятичной арифметики;

- операции двоичной арифметики для чисел с фиксированной точкой (запятой);

- операции логические над алфавитно-цифровыми кодами.

К арифметическим операциям относят операции сложения, умножения, вычитания и деления. К логи­ческим операциям относят операции дизъюнкции (ло­гическое ИЛИ), конъюнкции (логическое И) и сравне­ния кодов.

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

В процессорах с микропрограммным управлением АЛУ управляется микропрограммно. Все микропри­казы поступают на дешифратор микроприказов АЛУ, называемый схемой управления АЛУ, дешифрируются и выполняются.

На рис. 5.1 представлена упрощенная структурная схема АЛУ, содержащего блок регистров (Рг1, Рг2, ...Ргn) для хранения операн­дов и промежуточных ре­зультатов вычислений, сумматор (См), сдвигатель (Сдв), коммутатор (К) и устройство управления (УУ). Операнды поступа­ют из ОП или БП через входную шину на соответ­ствующие алгоритму вы­полнения операции регист­ры Рг1, Рг2,..., Ргn и затем на сумматоре и/или сдвигателе производятся необходимые действия; результат поступает в выходную шину.

Алгоритмы выполнения в АЛУ ариф­метических операций зависят от кода пред­ставления информации. Обычно в процессоре приме­няют два кода: прямой и дополнительный. Это объясняется тем, что операции арифметического сло­жения (вычитания) реализуются для отрицательных (положительных) чисел на основе применения ин­версных кодов — обратного и дополнительного. Одна­ко использование обратного кода затруднено тем, что в нем существует два представления нуля (+0) и (-0), существенно усложняющих схему управле­ния АЛУ.

 

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

На рис. 10.2/ представлена упрощенная структурная схема АЛУ для операций сложения и вычитания n-разрядных чисел с фиксированной точкой. Отрица­тельные числа представлены в дополнительном коде. Операнды поступают из БП или ОП на входную ШИВх и далее на регистры РгША и РгШВ, каждый из которых связан цепями прямой и инверсной пере­дач с регистрами РгА и РгВ соответственно. Обычно регистры РгА и РгВ называют также регистрами первого и второго операндов. Положительные операн­ды поступают в прямом коде (ПрКод), отрицатель­ные - в дополнительном (ДопКод). При вычитании двух положительных операндов вычитаемое также представляется в обратном коде. На сумматоре (См) осуществляется сложение чисел, поступивших с РгА и РгВ, а результат поступает на выходной регистр сумматора РгСм и далее в выходную шину ШИВых.

Рис. 5.2 Упрощенная структурная схема АЛУ для сложения и вычитания n-разрядных чисел с фикси­рованной точкой

 

Схема управления анализирует знак полученного ре­зультата и в зависимости от этого результат в РгСм поступает в соответствующем коде.

Алгоритм операции сложения (вычитания) чисел с плавающей точкой по сравнению с предыдущим алгоритмом несколько сложнее. Упрощенная структур­ная схема АЛУ для сложения чисел с плавающей точкой представлена на рис. 10.3. Основное отличие от схемы, представленной на рис. 10.2, заключается в использовании специальных регистров РгШ1, РгШ2, РгПА, РгПВ, РгСмП и сумматора СмП для обработки порядков чисел. Кроме того, в состав АЛУ входит сдвигатель Сдв, обеспечивающий сдвиг мантиссы на необходимое количество разрядов влево и вправо. Мантиссы обрабатываются так же, как и числа с фик­сированной точкой.

Алгоритм сложения (вычитания) чисел с плаваю­щей точкой заключается в следующем:

1) сравниваются порядки на сумматоре СмП, в случае их неравенства порядок меньшего числа принимается равным порядку большего числа и его мантисса сдвигается вправо на число разрядов, равное разности порядков чисел (содержимое регистра РгСмП) на Сдв;

2) выполняется сложение мантисс на сумматоре См, и в результате на регистре РгСм получается мантисса результата;

3) порядок результата принимается равным поряд­ку большего числа.

В операциях с плавающей точкой в отличие от операций с фиксированной точкой при сложении и вычитании чисел в случае выравнивания порядков может происходить потеря младших разрядов одного из операндов. Для уменьшения погрешности применяют дополнительный разряд сумматора, в который после выполнения суммирования добавляется «1», после чего результат округляется.

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

Рис 5.3. Структурная схема АЛУ для сложения и вычитания чисел

с плавающей точкой

 

Возможны четыре варианта схем организации опе­раций умножения:

1. Умножение производится начиная с младших разрядов множителя со сдвигом суммы частных произ­ведений вправо при неподвижном множимом.

2. Умножение производится начиная с младших разрядов множителя при сдвиге множимого влево и неподвижной сумме частичных произведений.

3. Умножение производится начиная со старших разрядов множителя при сдвиге суммы частичных произведений влево и неподвижном множимом.

4. Умножение производится начиная со старших разрядов множителя при сдвиге вправо множимого и неподвижной сумме частичных произведений.

Чаще всего применяется первый вариант выполне­ния операции умножения. Перед началом умножения (АЛУ на рис. 10.3) на соответствующие регистры поступают множимое (первый операнд) и множитель (второй операнд). Схема управления анализирует разряды множителя начиная с младшего. Если млад­ший разряд множителя равен «1», то к содержимому регистра результата РгСм в исходном состоянии, равному «О», на сумматоре См прибавляется множи мое и результат заносится на РгСм. Затем множитель и промежуточный результат сдвигаются на один разряд вправо и далее все происходит аналогично. Если разряд множителя равен «О», то сложение не произ­водится, а множитель и ре­зультат сдвигаются на один разряд вправо. Данная по­следовательность действий выполняется до тех пор, пока не будут проанализированы все разряды мно­жителя. Знак произведения, хранящегося на регистре РгСм, определяется сложением по модулю два зна­ков множимого и множителя.

 

Рис. 5.4. Схема деления с неподвижным делителем, сдвигаемым влево делимым (очередным остатком)

 

Алгоритм операции деления реализуется последо­вательным выполнением микроопераций вычитания и сдвига. Существует два основных варианта схем орга­низации операции деления:

1. Деление с неподвижным делимым (очередным остатком) и выдвигаемым вправо частным Х.

2. Деление с неподвижным делителем и сдвигае­мым влево делимым (очередным остатком). Чаще всего используют второй вариант (рис. 10.4). Перед началом деления в регистр Рг1 принимается делимое (первый операнд), а в регистр Рг2 — дели­тель (второй операнд). Затем делимое передается из Рг1 в сумматор, а содержимое Рг1 обнуляется. Деление начинается с вычитания содержимого Рг2 (делителя) из делимого на сумматоре.

При этом если делимое или очередной остаток окажется больше делителя, то старшая цифра частно­го, равная «I», записывается в младший разряд Рг1. Если же очередной остаток окажется меньше делителя, то в Рг1 записывается «О», после чего содержимое регистра Рг1 и сумматора сдвигается влево на один разряд и т. д.

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

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

В качестве примера рассмотрим реализацию функ­ций эквивалентности, неравнозначности и Пирса. На рис. 5.5 показана схема одного разряда логического блока АЛУ, реализующего указанные функции над i разрядами чисел Х и Y. Входные данные X; и Y,. вводятся в соответствующие триггеры (Т). Заданная функция реализуется наличием определенной комби­нации управляющих сигналов (1, 2, 3, 4). Так, при наличии сигналов 1 и 4 реализуется функция экви­валентности fi == XiyiVXiyi; при наличии сигналов 2 и 3—функция неравнозначности fi== (/«У-й»; при наличии сигнала 4 — функция Пирса /, == xiifi. Анало­гично задаются и другие логические функции.

Время выполнения операций в АЛУ является важ­ной характеристикой, определяющей быстродействие процессора в целом. На практике применяют два основных метода ускорения выполнения операций: аппаратный и логический (алгоритмический).

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

Рис. 5.5Схема разряда логического блока АЛУ

 

При использовании логических методов уменьшение времени выполнения операций достига­ется за счет совершенствования алгоритмов работы микропрограмм и схем управления. Широкое распро­странение получили эти методы при ускорении выпол­нения операций умножения.

Время умножения 1у»и разрядных чисел складывается из времени tcu получения п сумм частичных произведений и времени tcaa сдвигов п, т. е. умн ==' == п((см+ сдв). Однако число сдвигов можно сделать меньше п, если анализировать сразу два, а не один разряд множителя, что и выполняет схема управления. В зависимости от них осуществляются следующие микрооперации:

00 — производится сдвиг суммы частичных произ­ведений и множителя вправо на два разряда;

01 — множимое складывается с промежуточным ре­зультатом, и получаемая сумма сдвигается вправо на два разряда;

10—промежуточный результат сдвигается вправо на один разряд, затем к нему прибавляется множимое и полученная сумма сдвигается еще на один разряд вправо;

11 — из промежуточного результата вычитается множитель, результат сдвигается вправо на два раз­ряда, а к следующей паре разрядов множителя добав­ляется «I».

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

 

 

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

Функции процессора по управлению вычислитель­ным процессом или по преобразованию информации задаются машинными командами. Существует три основных вида операций преобразования информации процессором:

1) арифметические операции над числа­ми;

2) логические операции над алфавитно-цифровыми кодами;

3) операции передачи информации.



<== предыдущая лекция | следующая лекция ==>
Процессоры Р6 | Кроме команд, служащих для преобразования информации, существуют специальные команды для управления работой процессором и ЭВМ.


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.008 сек.