Курсовая работа: Системы счисления и коды

for m:=k downto 1 do

begin

{Складываем соотвествующие разряды + "что на ум пошло"}

temp:=StrToVal(BIN1[m])+StrToVal(BIN2[m])+pl_razryad;

{обнуляем то что на "ум пошло"}

pl_razryad:=0;

If temp>7 then

begin

inc(pl_razryad);

temp:=temp-2;

end;

{избавляемся от переполнения разрядной сетки}

if length(summ)<=8 then insert(ValToStr(temp),summ,1);

end;

{еслои после сложения двух числел что-то осталось "в уме"

добавляем еще один разряд}

if pl_razryad<>0 then insert(valtostr(pl_razryad),summ,1);

BINPlus:=summ;

end;

{двоичноевычитание}

function BinMinus(BIN1,BIN2:string):String;

var inverseBIN2:string[8];

begin

{т.к. вычитание есть сложение первой величины и

второй величины взятой с инверсией, то можно

делать так}

{инверсия величины BIN2}

inverseBIN2:=DecToBase(-BaseToInt(BIN2,2),2);

{сложение BIN1 и инверсной Bin2}

К-во Просмотров: 688
Бесплатно скачать Курсовая работа: Системы счисления и коды