Автор: Пользователь скрыл имя, 13 Декабря 2011 в 17:07, курсовая работа
Цель исследования: Выявить и систематизировать материалы по теме: «Системы счисления и основы двоичных кодировок».
Введение
1.История развития систем счисления 3
Зарождение систем счисления 2
1.2 Образование десятичной системы счисления 4
11. Системы счисления 5
2.1 Позиционные и непозиционные системы счисления 5
2.2 Двоичная(бинарная) система счисления 6
2.3 Восьмеричная система счисления. 6
2.4 Десятеричная система счисления 6
2.5 Шестнадцатеричная система счисления 7
111. Представление чисел в ЭВМ 8
3.1Представление чисел с фиксированной и плавающей запятой. 8
3.2 Числа с фиксированной запятой 8
3.3 Числа с плавающей запятой 9
3.4 Прямой, обратный и дополнительный коды.
Модифицированный код 10
1111.Перевод чисел 13
4.1 Представление двоичных чисел и перевод их в десятичные 13
4.2 Преобразование десятичных чисел в двоичные 13
4.2.1 Метод деления 13
4.2.2 Метод умножения 14
5.Постановка задачи 15
6.Внешнее проектирование программы 15
7.Математическая модель 16
8.Кодирование и отладка программы 17
9.Таблица тестов 23
Заключение
Список использованных источников
begin
case vv1[i] of
'0'..'9','a'..'f','A'..'F':;
else error1 :=1;
end;
end;
end;
4) Функция возводит целое число в степень. x – это число в которое требуется возвести в степень, N – степень в которую надо возвести число вывод информации в типе integer.
function step(n:integer; x : integer): integer;
var
y: integer;
begin
y:=1;
for i:= 1 to n do{Цикл задает число умножений}
y := y*x;{умножает число которое требуется возвести в цикл на Y и присваивает значение Y}
step := y;
end;
5) Присваивает переменной vv1 входные данные.
procedure TForm1.Edit1Change(Sender: TObject);
begin
vv1:= edit1.text;
end;
6)Функция
присваивает радиогруппе «
procedure TForm1.RadioGroup1Click(
begin
case radiogroup1.ItemIndex of { Определяет ItemIndex и присваивает m данные типа integer согласно условию}
0: m:=2;
1: m:=8;
2: m:=10;
3: m:=16;
end;
end;
7)Функция срабатывает на нажатие кнопки «Перевести». Переводит из 2,8,10,16-ой системы счисления в десятичную систему передаёт данные b выполняет функцию perevod0.Так же выводит полученный результат на экран.
procedure TForm1.Button1Click(Sender: TObject);
var
n : integer;
begin
if error1(vv1) <> 1 then {Если error1 не равно 1 то }
begin
ch1 :=0;
for i := 0 to length(vv1)-1 do {Начало цикла FOR}
begin n
n:=perevod0(vv1[length(vv1)-i]
ch1 := ch1+n;
end;
label1.Caption := perevod1(ch1,m1);{На экран выводиться переведённое число}
end
else label1.Caption
:= 'ОШИБКА ВВОДА!!!'; {иначе на экран выводиться
'ОШИБКА ВВОДА!!!'; }
end;
8)
Функция присваивает радио группе Исходная
система значение. procedure TForm1.RadioGroup2Click(
begin
case radiogroup2.ItemIndex of{ Определяет ItemIndex и присваивает m данные типа integer согласно условию}
0: m1:=2;
1: m1:=8;
2: m1:=10;
3: m1:=16;
end;
end;
end.
9.Таблица тестов.
№ | Входные данные | Полученное число | Примечание | ||
Переводимое число | Исходная система | Конечная система | |||
1 | 1011 | 2 | 2 | 1011 | Тесты предложенные на проверку правильности перевода |
2 | 1011 | 2 | 8 | 13 | |
3 | 1011 | 2 | 10 | 11 | |
4 | 1011 | 2 | 16 | B | |
5 | 17 | 8 | 2 | 1111 | |
6 | 17 | 8 | 8 | 20 | |
7 | 17 | 8 | 10 | 15 | |
8 | 17 | 8 | 16 | F | |
9 | 254 | 10 | 2 | 11111110 | |
10 | 254 | 10 | 8 | 376 | |
11 | 254 | 10 | 10 | 254 | |
12 | 254 | 10 | 16 | FE | |
13 | adf34 | 16 | 2 | 10101101111100100000 | |
14 | adf34 | 16 | 8 | 2557464 | |
15 | adf34 | 16 | 10 | 712500 | |
16 | adf34 | 16 | 16 | ADF34 | |
17 | 212 | 16 | 10 | 530 | |
18 | ропл | 2 | 16 | ОШИБКА ВВОДА!!! | Тесты на ошибку ввода |
19 | adf323g | 2 | 16 | ОШИБКА ВВОДА!!! | |
20 | пустая строка | 8 | 10 | ОШИБКА ВВОДА!!! |
ЗАКЛЮЧЕНИЕ
В кокой системе
счисления лучше записывать числа
- это вопрос удобства и традиций. С
технической точки зрения, в ЭВМ удобно
использовать двоичную систему, так как
в ней для записи числа используется всего
две цифры 0 и 1, которыми можно представить
двумя легко различимыми состояниями
«нет сигнала» и «есть сигнал».
Изучая источники
по теме «Системы счисления» мы получили
возможность провести исторический
анализ, исследовать различные формы
записи чисел, систематизировать материал
и выявить различные спектры
применения.
Различные системы
счисления окружают нас повсюду.
Сами того не замечая мы ежедневно пользуемся
не только десятичной системой счисления,
а так же двенадцатеричной, когда хотим
узнать время или покупаем в магазине
пуговицы.
Сейчас системы
счисления очень распространены
в электронно-вычислительной технике,
многие коды и шифры созданы на их основе.
В ходе проведения
исследования:
— исследовали
историю и развитие систем счисления,
— исследовали
практический материал
— рассмотрели
область применения и выявили
актуальность темы.
Нами решены
задачи:
— арифметические
действия в различных системах счисления,
— перевод из
одной системы счисления в
другую.
10.Список литературы.