Это - В микропроцессорах двоичные коды используются для представления любой обрабатываемой информации. При этомразрядность обрабатываемых чисел может превышать разрядность самого процессора и используемой в нЈм памяти. В этом случае длинное число может занимать несколько ячеек памяти и обрабатываться несколькими командами процессора. При обработке все ячейки памяти, выделенные под многобайтное число, рассматриваются как одно число.
Для представления числовой информации могут использоваться знаковые и беззнаковые коды. Для определЈнности примем длину слова процессора равной восьми битам.
Беззнаковые двоичные коды.
Первый вид двоичных кодов, который мы рассмотрим - это целые беззнаковые коды. В этих кодах каждый двоичный разряд представляет собой степень цифры 2:

При этом минимально возможное число, которое можно записать таким двоичным кодом, равно 0. Максимально возможное число, которое можно записать таким двоичным кодом, можно определить как:

Этими двумя числами полностью можно определить диапазон, чисел которые можно представить таким двоичным кодом. В случае двоичного восьмиразрядного беззнакового целого числа диапазон будет: диапазон чисел, которые можно записать таким кодом: 0 .. 255. Для шестнадцатиразрядного кода этот 0 .. 65535. В восьмиразрядном процессоре для хранения такого числа используется две ячейки памяти, расположенные в соседних адресах. Для работы с такими числами используются специальные команды.
Второй вид двоичных кодов, который мы рассмотрим - это прямые целые знаковые коды. В этих кодах старший разряд в слове используется для представления знака числа. В прямом знаковом коде нулем обозначается знак '+', а единицей - знак '-'. В результате введения знакового разряда диапазон чисел смещается в сторону отрицательных чисел:

В случае двоичного восьмиразрядного знакового целого числа диапазон чисел, которые можно записать таким кодом: -127 .. +127. Для шестнадцатиразрядного кода этот диапазон будет: -32767 .. +32767. В восьмиразрядном процессоре для хранения такого числа тоже используется две ячейки памяти, расположенные в соседних адресах.
Недостатком такого кода является то, что знаковый разряд и цифровые разряды приходится обрабатывать раздельно. Алгоритм программ, работающий с такими кодами получается сложный. Для выделения и изменения знакового разряда приходится применять механизм маскирования разрядов, что резко увеличивает размер программы и уменьшает ее быстродействие. Для того, чтобы алгоритм обработки знакового и цифровых разрядов не различался, были введены обратные двоичные коды.
Знаковые обратные двоичные коды.
Обратные двоичные коды отличаются от прямых только тем, что отрицательные числа в них получаются инвертированием всех разрядов числа. При этом знаковый и цифровые разряды не различаются. Алгоритм работы с такими кодами резко упрощается.

Тем не менее при работе с обратными кодами требуется специальный алгоритм распознавания знака, вычисления абсолютного значения числа, восстановления знака результата числа. Кроме того, в прямом и обратном коде числа для запоминания числа 0 используется два кода, тогда как известно, что число 0 положительное и отрицательным не может быть никогда.
Знаковые дополнительные двоичные коды.
От перечисленных недостатков свободны дополнительные коды. Эти коды позволяют непосредственно суммировать положительные и отрицательные числа не анализируя знаковый разряд и при этом получать правильный результат. Все это становится возможным благодаря тому, что дополнительные числа являются естественным кольцом чисел, а не исскуственным образованием как прямые и обратные коды. Кроме того немаловажным является то, что вычислять дополнение в двоичном коде чрезвычайно легко. Для этого достаточно к обратному коду добавить 1:

Диапазон чисел, которые можно записать таким кодом: -128 .. +127. Для шестнадцатиразрядного кода этот диапазон будет: -32768 .. +32767. В восьмиразрядном процессоре для хранения такого числа используется две ячейки памяти, расположенные в соседних адресах.
В обратных и дополнительных кодах наблюдается интересный эффект, который называется эффект распространения знака. Он заключается в том, что при преобразовании однобайтного числа в двухбайтное достаточно всем битам старшего байта присвоить значение знакового бита младшего байта. То есть для хранения знака числа можно использовать сколько угодно старших бит. При этом значение кода совершенно не изменяется.
Использование для представления знака числа двух бит предоставляет интересную возможность контролировать переполнения при выполнении арифметических операций. Рассмотрим несколько примеров.
Для каждого этапа документируемого процесса перетащите в документ соответствующую фигуру блок-схемы.
Чтобы соединить элементы блок-схемы, наведите указатель мыши на первую фигуру, и щелкните стрелку, указывающую на фигуру, с которой требуется создать соединение. Если вторая фигура находится не рядом с первой, необходимо перетащить маленькую стрелку к центру второй фигуры.
Чтобы добавить текст для фигуры или соединительной линии, выделите ее и введите текст. По завершении ввода текста щелкните в пустой области страницы.
Чтобы изменить направление стрелки соединительной линии, выберите соединение, а затем на вкладке Фигура в группе Стили фигур щелкните пункт Линия, наведите указатель на пункт Стрелки и выберите нужное направление и вид стрелки.
Автоматическое выравнивание и интервалы
Нажмите сочетание клавиш CTRL+A, чтобы выбрать все объекты на странице.
На вкладке Главная в группе Упорядочение нажмите кнопку Положение и выберите пункт Автовыравнивание и определение интервалов.
Если это не привело к нужному результату, отмените ее, нажав сочетание клавиш CTRL+Z, и воспользуйтесь другими параметрами меню кнопок Выравнивание и Положение.
Пример блок-схемы, представляющей процесс предложения
Что представляют блок-схемы
При открытии шаблона блок-схема открывается набор элементов Фигуры блок-схемы. Каждая фигура в этом наборе представляет собой тот или иной этап процесса. Но фигуры не имеют какого-то универсального смысла, их значение определяется создателями и пользователями блок-схем. В большинстве блок-схем используется три или четыре вида фигур, и этот диапазон расширяется только по специфической необходимости.
При этом названия фигур в Visio указывают на их применение. Ниже описаны наиболее рас фигуры.
Начало/конец. Эту фигуру следует использовать для представления первого и последнего этапа процесса.
Фигура "Начало/Завершение"
Процесс. Фигура представляет собой стандартный этап процесса. Это одна из наиболее часто используемых фигур в любом процессе.
Фигура "Процесс"
Решение. Эта фигура используется в точке, где выбор следующего этапа зависит от принятого решения. Вариантов может быть несколько, но чаще всего их два: "да" и "нет".
Фигура "Решение"
Подпроцесс. Эту фигуру следует использовать для представления ряда этапов, которые в совокупности образуют подпроцесс, определенный в другом месте (часто на другой странице того же документа). Такой подход удобен, если блок-схема получается слишком большой и сложной.
Фигура "Заранее определенный процесс"
Документ. Эта фигура представляет этап, на котором создается документ.
Фигура "Документ"
Данные. Эта фигура указывает, что данные поступают в процесс или покидают его. Также эта фигура может представлять материалы. Иногда ее называют фигурой "Ввод/Вывод".
Фигура "Данные"
Ссылка на текущую страницу. Маленький круг показывает, что следующий (предыдущий) этап находится в другом месте документа. Эта фигура особенно полезна на больших блок-схемах, где в противном случае пришлось бы использовать длинный соединитель, который сложно отследить.
Фигура "Ссылка на текущую страницу"
Ссылка на другую страницу. При размещении этой фигуры на странице открывается диалоговое окно, в котором можно создать набор гиперссылок между двумя страницами блок-схемы или между фигурой "Подпроцесс" и отдельной страницей блок-схемы, на которой показаны этапы этого подпроцесса.
В микропроцессорах двоичные коды используются для представления любой обрабатываемой информации. При этомразрядность обрабатываемых чисел может превышать разрядность самого процессора и используемой в нЈм памяти. В этом случае длинное число может занимать несколько ячеек памяти и обрабатываться несколькими командами процессора. При обработке все ячейки памяти, выделенные под многобайтное число, рассматриваются как одно число.
Для представления числовой информации могут использоваться знаковые и беззнаковые коды. Для определЈнности примем длину слова процессора равной восьми битам.
Беззнаковые двоичные коды.
Первый вид двоичных кодов, который мы рассмотрим - это целые беззнаковые коды. В этих кодах каждый двоичный разряд представляет собой степень цифры 2:

При этом минимально возможное число, которое можно записать таким двоичным кодом, равно 0. Максимально возможное число, которое можно записать таким двоичным кодом, можно определить как:

Этими двумя числами полностью можно определить диапазон, чисел которые можно представить таким двоичным кодом. В случае двоичного восьмиразрядного беззнакового целого числа диапазон будет: диапазон чисел, которые можно записать таким кодом: 0 .. 255. Для шестнадцатиразрядного кода этот 0 .. 65535. В восьмиразрядном процессоре для хранения такого числа используется две ячейки памяти, расположенные в соседних адресах. Для работы с такими числами используются специальные команды.
Второй вид двоичных кодов, который мы рассмотрим - это прямые целые знаковые коды. В этих кодах старший разряд в слове используется для представления знака числа. В прямом знаковом коде нулем обозначается знак '+', а единицей - знак '-'. В результате введения знакового разряда диапазон чисел смещается в сторону отрицательных чисел:

В случае двоичного восьмиразрядного знакового целого числа диапазон чисел, которые можно записать таким кодом: -127 .. +127. Для шестнадцатиразрядного кода этот диапазон будет: -32767 .. +32767. В восьмиразрядном процессоре для хранения такого числа тоже используется две ячейки памяти, расположенные в соседних адресах.
Недостатком такого кода является то, что знаковый разряд и цифровые разряды приходится обрабатывать раздельно. Алгоритм программ, работающий с такими кодами получается сложный. Для выделения и изменения знакового разряда приходится применять механизм маскирования разрядов, что резко увеличивает размер программы и уменьшает ее быстродействие. Для того, чтобы алгоритм обработки знакового и цифровых разрядов не различался, были введены обратные двоичные коды.
Знаковые обратные двоичные коды.
Обратные двоичные коды отличаются от прямых только тем, что отрицательные числа в них получаются инвертированием всех разрядов числа. При этом знаковый и цифровые разряды не различаются. Алгоритм работы с такими кодами резко упрощается.

Тем не менее при работе с обратными кодами требуется специальный алгоритм распознавания знака, вычисления абсолютного значения числа, восстановления знака результата числа. Кроме того, в прямом и обратном коде числа для запоминания числа 0 используется два кода, тогда как известно, что число 0 положительное и отрицательным не может быть никогда.
Знаковые дополнительные двоичные коды.
От перечисленных недостатков свободны дополнительные коды. Эти коды позволяют непосредственно суммировать положительные и отрицательные числа не анализируя знаковый разряд и при этом получать правильный результат. Все это становится возможным благодаря тому, что дополнительные числа являются естественным кольцом чисел, а не исскуственным образованием как прямые и обратные коды. Кроме того немаловажным является то, что вычислять дополнение в двоичном коде чрезвычайно легко. Для этого достаточно к обратному коду добавить 1:

Диапазон чисел, которые можно записать таким кодом: -128 .. +127. Для шестнадцатиразрядного кода этот диапазон будет: -32768 .. +32767. В восьмиразрядном процессоре для хранения такого числа используется две ячейки памяти, расположенные в соседних адресах.
В обратных и дополнительных кодах наблюдается интересный эффект, который называется эффект распространения знака. Он заключается в том, что при преобразовании однобайтного числа в двухбайтное достаточно всем битам старшего байта присвоить значение знакового бита младшего байта. То есть для хранения знака числа можно использовать сколько угодно старших бит. При этом значение кода совершенно не изменяется.
Использование для представления знака числа двух бит предоставляет интересную возможность контролировать переполнения при выполнении арифметических операций. Рассмотрим несколько примеров.
новые версии
Создание блок-схемы
Запустите Visio.
Выберите категорию Блок-схема.
Дважды щелкните значок блок-схема.
Для каждого этапа документируемого процесса перетащите в документ соответствующую фигуру блок-схемы.
Чтобы соединить элементы блок-схемы, наведите указатель мыши на первую фигуру, и щелкните стрелку, указывающую на фигуру, с которой требуется создать соединение. Если вторая фигура находится не рядом с первой, необходимо перетащить маленькую стрелку к центру второй фигуры.
Чтобы добавить текст для фигуры или соединительной линии, выделите ее и введите текст. По завершении ввода текста щелкните в пустой области страницы.
Чтобы изменить направление стрелки соединительной линии, выберите соединение, а затем на вкладке Фигура в группе Стили фигур щелкните пункт Линия, наведите указатель на пункт Стрелки и выберите нужное направление и вид стрелки.
Автоматическое выравнивание и интервалы
Нажмите сочетание клавиш CTRL+A, чтобы выбрать все объекты на странице.
На вкладке Главная в группе Упорядочение нажмите кнопку Положение и выберите пункт Автовыравнивание и определение интервалов.
Если это не привело к нужному результату, отмените ее, нажав сочетание клавиш CTRL+Z, и воспользуйтесь другими параметрами меню кнопок Выравнивание и Положение.
Пример блок-схемы, представляющей процесс предложения
Что представляют блок-схемы
При открытии шаблона блок-схема открывается набор элементов Фигуры блок-схемы. Каждая фигура в этом наборе представляет собой тот или иной этап процесса. Но фигуры не имеют какого-то универсального смысла, их значение определяется создателями и пользователями блок-схем. В большинстве блок-схем используется три или четыре вида фигур, и этот диапазон расширяется только по специфической необходимости.
При этом названия фигур в Visio указывают на их применение. Ниже описаны наиболее рас фигуры.
Начало/конец. Эту фигуру следует использовать для представления первого и последнего этапа процесса.
Фигура "Начало/Завершение"
Процесс. Фигура представляет собой стандартный этап процесса. Это одна из наиболее часто используемых фигур в любом процессе.
Фигура "Процесс"
Решение. Эта фигура используется в точке, где выбор следующего этапа зависит от принятого решения. Вариантов может быть несколько, но чаще всего их два: "да" и "нет".
Фигура "Решение"
Подпроцесс. Эту фигуру следует использовать для представления ряда этапов, которые в совокупности образуют подпроцесс, определенный в другом месте (часто на другой странице того же документа). Такой подход удобен, если блок-схема получается слишком большой и сложной.
Фигура "Заранее определенный процесс"
Документ. Эта фигура представляет этап, на котором создается документ.
Фигура "Документ"
Данные. Эта фигура указывает, что данные поступают в процесс или покидают его. Также эта фигура может представлять материалы. Иногда ее называют фигурой "Ввод/Вывод".
Фигура "Данные"
Ссылка на текущую страницу. Маленький круг показывает, что следующий (предыдущий) этап находится в другом месте документа. Эта фигура особенно полезна на больших блок-схемах, где в противном случае пришлось бы использовать длинный соединитель, который сложно отследить.
Фигура "Ссылка на текущую страницу"
Ссылка на другую страницу. При размещении этой фигуры на странице открывается диалоговое окно, в котором можно создать набор гиперссылок между двумя страницами блок-схемы или между фигурой "Подпроцесс" и отдельной страницей блок-схемы, на которой показаны этапы этого подпроцесса.
Фигура "Ссылка на другую страницу"