Определить значения полей структуры по содержимому файла - Assembler
Формулировка задачи:
Здравствуйте
В задание надо определить какая информация представлена в картинке
Подскажите ,пжлс,просто надо перевести чисел в 10-тичный?
я
program type_data;
Type
CH=array [1..16] of char;
T=record
--------------------------------------------------
tekst:CH; {строка 16 символов, 1й-16й байты}
ShorP:shortint; {однобайтное целое со знаком,
17й байт}
ShorN:shortint; {однобайтное целое со знаком,
18й байт}
IntP:integer; {двухбайтное целое со знаком,
19й-20й байты}
LongN:longint; {четырехбайтное целое со знаком,
21й-24й байты}
SingP:single; {стандартное вещественное,
25й-28й байты}
SingN:single; {стандартное вещественное,
29й-32й байты}
--------------------------------------------------
RealP:real; {нестандартное вещественное,
33й-38й байты}
RealN:real; {нестандартное вещественное,
39й-44й байты}
PrimP:real {Пример: PrimP=1.5 (1.1B),
45й-50й байты}
--------------------------------------------------
end;
Var X:T;
f:file of T;
fin:text;
fil_in,fil_out:string[12];
num_lr:char;
begin
X.tekst:='Строка символов ';
X.PrimP:=1.5;
for num_lr:='1' to '15' do
begin
Assign(fin,'lr3_v'+num_lr+'.txt');
Reset(fin);
read(fin,X.ShorP,X.ShorN,X.IntP,X.LongN,
X.SingP,X.SingN,X.RealP,X.RealN);
close(fin);
Assign(f,'lr3_v'+num_lr+'.dat');
Rewrite(f);
write(f,X);
close(f)
end
end.Решение задачи: «Определить значения полей структуры по содержимому файла»
textual
Листинг программы
dseg:0000 db 0 ; dseg:0001 db 0 ; dseg:0002 aTrokaSimvolov db 'Строка символов ',0,0 ; DATA XREF: PROGRAM+19o dseg:0014 word_13FF4 dw 0 ; DATA XREF: __SystemInit(void)+24r dseg:0016 dw 0 dseg:0018 db 2 dup(0) dseg:001A word_13FFA dw 0 ; DATA XREF: __SystemInit(void)+1Ew dseg:001C word_13FFC dw 0 ; DATA XREF: __SystemInit(void) dseg:001E word_13FFE dw 0 ; DATA XREF: __SystemInit(void) dseg:0020 word_14000 dw 0 ; DATA XREF: Halt(Word) dseg:0022 align 4 dseg:0024 dw 0FFFFh dseg:0026 dw 0 dseg:0028 word_14008 dw 0 ; DATA XREF: __SystemInit(void) dseg:002A align 4 dseg:002C word_1400C dw 0 ; DATA XREF: __SystemInit(void) dseg:002E align 4 dseg:0030 word_14010 dw 0 ; DATA XREF: __SystemInit(void) dseg:0032 align 4 dseg:0034 word_14014 dw 0 ; DATA XREF: __SystemInit(void)
Объяснение кода листинга программы
- В переменной
aTrokaSimvolovхранится строка символовСтрока символов. - В переменной
word_13FF4хранится слово (2 байта) со значением 0. - В переменной
word_13FFAхранится слово со значением 0. - В переменной
word_13FFCхранится слово со значением 0. - В переменной
word_13FFEхранится слово со значением 0. - В переменной
word_14000хранится слово со значением 0. - В переменной
word_14008хранится слово со значением 0. - В переменной
word_1400Cхранится слово со значением 0. - В переменной
word_14010хранится слово со значением 0. - В переменной
word_14014хранится слово со значением 0.