Системы счисления

Аннотация

Лабораторный практикум содержит методические указания и теоретические сведения по практическому изучению форматов компьютерного представления данных и введению в программную модель PC-совместимого компьютера. В практикум включены семь лабораторных работ, выполнение которых позволит понять основы Intel-архитектуры и научиться использовать полученные навыки при работе с компьютером. Выполнение индивидуальных заданий предусмотрено в большинстве работ, что обеспечивает хорошее восприятие нового материала студентами. Примеры в лабораторном практикуме разработаны с таким условием, чтобы программы можно было создавать с помощью инструментального средства Borland C++ 4.0, а запускать — в консольном режиме операционных систем Windows 9х и 2000/NT/XP.

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

Содержание

Лабораторная работа №1. Системы счисления. 3

Лабораторная работа №2. Побитовые операции. 17

Лабораторная работа №3. Синтез комбинационных схем.. 28

Лабораторная работа №4. Символьные данные. 39

Лабораторная работа №5. Отрицательные числа и числа BCD.. 48

Лабораторная работа №6. Основы языка Ассемблер. 56

Лабораторная работа №7. Команды переходов и логических операций. 68

Литература. 83


Лабораторная работа № 1

Системы счисления

Цель работы: Изучение двоичной и шестнадцатеричной систем счисления; освоение приемов перевода целых и дробных чисел из десятичной системы счисления в двоичную, шестнадцатеричную и обратно.

Продолжительность работы: 8 ч.

Теоретические сведения

Системы счисления

Обычное десятичное число состоит из цепочки десятичных цифр и десятичной точки, если число дробное [1]. Цифры занимают определенные позиции в числе, их еще называют разрядами. Общая форма записи десятичного числа приведена на Рис. 1.

Рис. 1. Форма записи десятичного числа

Система счисления, при которой имеет значение местоположение цифр в записи числа, называется позиционной системой счисления. Десятичная система счисления является позиционной. В любой позиционной системе счисления имеется основание (для десятичной системы счисления — 10). Любое число записывается в виде последовательности, состоящей из цифр, каждая из которых меньше основания. Количество цифр основания равно самому основанию. Основание показывает, во сколько раз вес каждой цифры меньше веса цифры, стоящей в старшем соседнем разряде.

Для -ичной системы счисления:

Число = , (1)

где — основание системы счисления, j-ый разряд числа в -ичной системе.

Десятичные числа строятся из десяти цифр: 0, 1, 2, 3, 4, 5, 6, 7, 8 и 9. Двоичным числам необходимо две цифры: 0 и 1. Для шестнадцатеричных чисел требуется 16 цифр. Для обозначения цифр, следующих за 9, принято использовать латинские буквы от A до F (см. табл. 1).

Таблица 1. Цифры шестнадцатеричной системы.

Цифра Значение Цифра Значение Цифра Значение Цифра Значение
C
D
A E
B F

На рисунке 2 десятичное число 197 представлено согласно формуле (1) в двоичной, десятичной и шестнадцатеричной системах счисления.

Рис. 2. Число 197 в двоичной, десятичной и шестнадцатеричной системах

Чтобы избежать двусмысленности трактования числа, в литературе используется индекс для прямого указания основания системы счисления. Например, число C5 кроме как шестнадцатеричным быть не может, потому что в нем встречается цифра С, но оно может быть именем переменной. Индекс 16 избавляет от этой двусмысленности: C516. А число 101 может быть и двоичным, и десятичным, и шестнадцатеричным (1012, 10110, 10116), так как цифры 0 и 1 есть во всех этих системах счисления.

Если индекс не указывать, то считается, что число записано в десятичной системе.

Для компьютеров метод индексирования чисел для указания системы счисления неприемлем, поэтому используется правило записи чисел: для чисел, вводимых пользователем, присваиваемых в текстах программ и выводимых программой, система счисления по умолчанию десятичная, кроме специализированных программ (например, debug.exe и td.exe). В языках программирования для обозначения чисел в других систем счисления существуют свои обозначения (см. Табл.1.2.). Для вывода чисел в недесятичных системах счисления существуют специализированные строки форматирования и процедуры преобразования.

Таблица 1.2. Обозначение систем счисления в языках программирования.


Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *