Определить значения полей структуры по содержимому файла - Assembler

Узнай цену своей работы

Формулировка задачи:

Здравствуйте
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.
В задание надо определить какая информация представлена в картинке Подскажите ,пжлс,просто надо перевести чисел в 10-тичный? я

Решение задачи: «Определить значения полей структуры по содержимому файла»

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)

Объяснение кода листинга программы

  1. В переменной aTrokaSimvolov хранится строка символов Строка символов.
  2. В переменной word_13FF4 хранится слово (2 байта) со значением 0.
  3. В переменной word_13FFA хранится слово со значением 0.
  4. В переменной word_13FFC хранится слово со значением 0.
  5. В переменной word_13FFE хранится слово со значением 0.
  6. В переменной word_14000 хранится слово со значением 0.
  7. В переменной word_14008 хранится слово со значением 0.
  8. В переменной word_1400C хранится слово со значением 0.
  9. В переменной word_14010 хранится слово со значением 0.
  10. В переменной word_14014 хранится слово со значением 0.

Оцени полезность:

6   голосов , оценка 4 из 5
Похожие ответы