вот что я набросал:
Код: Выделить всё
uses crt, math;
var Nfirst, Ntemp, Ntemp1, Nfirst1, Nfirst2:longint;
binary:string;
i,j,p,q,w,e,r:integer;
begin
clrscr;
writeln ('Vvedit''4uslo');
readln (Nfirst);
writeln;
writeln;
writeln ('Zadane 4uslo ', Nfirst);
Nfirst1:= Nfirst;
Nfirst2:= Nfirst;
for i:= 1 to 32 do
begin
Ntemp := Nfirst div 2;
j:= Nfirst mod 2;
Nfirst:= Ntemp;
write(j);
end;
for q:=1 to 4 do
begin
p:= Nfirst1 shl 4;
{begin
p:= Nfirst1 shr 4;
end;}
end;
for q:= 5 to 8 do
begin
p:= Nfirst1 shr 4;
end;
{ for q:=17 to 20 do
begin
p:= Nfirst1 shr 4;
end;
for q:=25 to 28 do
begin
p:= Nfirst1 shr 4;
end;
for q:=5 to 8 do
begin
p:=Nfirst2 shl 4;
end;
for q:=13 to 16 do
begin
p:=Nfirst2 shl 4;
end;
for q:=21 to 24 do
begin
p:=Nfirst2 shl 4;
end;
for q:=29 to 32 do
begin
p:=Nfirst2 shl 4;
end};
writeln;
writeln;
writeln ('P= ' ,p );
for e:=1 to 32 do
begin
Ntemp1:=p div 2;
r:= p mod 2;
p:= Ntemp1;
write (r );
end;
readln;
end.