Пример использования битовой структуры
Дата создания файла задается в виде:
день : 5 битов;
месяц : 4 бита;
год: 7 битов.
Год задает разность между текущим годом и 1970[13]
годом.
Значения для текущей даты упаковать в структуру и
проверить правильность упаковки.
ideal
p486
model flat
extrn ExitProcess:proc
dataseg
record data1 y:7, m:4, d:5
d1 data1 <>
day db 1
month db 11
year dw 2000
codeseg
begin:
movzx ax, [day]
movzx bx, [month]
mov cl, m
shl bx, cl
or ax, bx
mov bx, [year]
sub bx, 1970
mov cl, y
shl bx, cl
or ax, bx
mov [d1], ax
mov ax, [d1]
mov bx, mask d
and bx, ax
mov [day], bl
mov bx, mask m
and bx, ax
mov cl, m
shr bx, cl
mov [month], bl
mov bx, mask y
and bx, ax
mov cl, y
shr bx, cl
add bx, 1970
mov [year], bx
call ExitProcess
end begin
Использование битовых структур позволяет сделать программу более мобильной. При изменении размера полей достаточно изменить только определение структуры, все остальные команды изменять не надо.
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий