Портал освітньо-інформаційних послуг «Студентська консультація»

  
Телефон +3 8(066) 185-39-18
Телефон +3 8(093) 202-63-01
 (093) 202-63-01
 studscon@gmail.com
 facebook.com/studcons

<script>

  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){

  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),

  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)

  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

 

  ga('create', 'UA-53007750-1', 'auto');

  ga('send', 'pageview');

 

</script>

Дизасемблювання TPU, TPP, TPW модулів, написаних на Паскалі

Тип роботи: 
Курсова робота
К-сть сторінок: 
82
Мова: 
Українська
Оцінка: 

          write('''#$',hexbyte(ord(string(val)[i])));

                      state:=2;
                    end;
                 2: write('#$',hexbyte(ord(string(val)[i])));
                 end
               else
                 case state of
                 0,2: begin
                     state:=1;
                     write('''',string(val)[i]);
                    end;
                 1: write(string(val)[i]);
                 end;
             end;
           if state=1 then
             write('''');
           end;
      15  { enum }
         : begin
             if NowEnum=nil then
               write_enum_const(type_obj,longint(val))
             else
               write(integer(val));
           end;
      12  { int }
         : write(longint(val));
      13  { bool }
         : write(boolean(val));
      14  { char }
         : if (char(val)<' ') or (char(val)>#$fe) then
             write('#$',hexbyte(byte(val)))
           else
             write('''',char(val),'''');
      10  { extend }
         : write(extended(val));
      8   { pointer }
         : write('ptr($'+hexword(seg(pointer(val)^))+
                 ',$'+hexword(ofs(pointer(val)^))+')');
      7   { set }
         : begin
             write('[');
             Count:=0;
             last:=-2;
             Range:=False;
             for l:=0 to 255 do
               if l in tbyteset(val) then
               begin
                 if Range or (last=l-1) then
                   Range:=True
                 else
                 begin
                   inc(Count);
                   if Count>1 then
                     write(',');
                   write_const_type(l,type_obj^.base_unit,type_obj^.base_ofs,buffer);
                   last:=l;
                 end
               end
               else
               begin
                 if Range then
                 begin
                   Range:=False;
                   if last=l-2 then
                   begin
                     last:=l-1;
                     write(',');
                     write_const_type(last,type_obj^.base_unit,type_obj^.base_ofs,buffer);
                   end
                   else
                   begin
                     last:=l-1;
                     write('..');
                     write_const_type(last,type_obj^.base_unit,type_obj^.base_ofs,buffer);
                   end;
                 end;
                 last:=-2;
               end;
             write(']');
           end;
      else
        WriteError('Unknown type of constant');
 
Фото Капча