![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
strateg66 |
![]()
Сообщение
#1
|
Новичок ![]() Группа: Продвинутые Сообщений: 6 Регистрация: 7.10.2009 Город: Ukraine, Crimea Учебное заведение: СНУЯЭиП Вы: студент ![]() |
Составить две программы, первая из которых вводит составные части структуры данных, приведенной в Вашем варианте индивидуального задания, и формирует из них заданную упакованную структуру. Вторая программа вводит упакованную структуру как 16-ричное число и выводит значения отдельных ее составных частей.
Формат представления текущей даты в некоторых системных структурах имеет вид: № разряда 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00 Значение D D D D D M M M M M Y Y Y Y Y Y где: D..D - день M..M - месяц Y..Y - год после 1980 За основу программы упаковки предлагают взять следущую: program Project1; { $APPTYPE CONSOLE} uses SysUtils; Var C:Byte; F:Byte; B:Byte; N:Byte; UnitStateWord:Word; begin Write('Введите код состояния (0..31) >'); ReadLn©; Write('Введите признак ошибки - (0,1) >'); ReadLn(F); Write('Введите признак занятости - (0,1) >'); ReadLn((IMG:style_emoticons/default/cool.gif); Write('Введите количество байт - (0..255) >'); ReadLn(N); UnitStateWord:=(C and $1F) shl 11; UnitStateWord:=UnitStateWord or (F and 1) shl 9; UnitStateWord:=UnitStateWord or (B and 1) shl 8; UnitStateWord:=UnitStateWord or N; WriteLn(Format('%d=$%0:x',[UnitStateWord])); ReadLn; end. Не совсем понимаю как это работает, и что надо исправить чтобы соответствовало условию задачи |
![]() ![]() |
![]() |
Текстовая версия | Сейчас: 25.5.2025, 20:13 |
Зеркало сайта Решебник.Ру - reshebnik.org.ru