kreol
Новые
- Регистрация
- 27 Фев 2010
- Сообщения
- 659
- Реакции
- 16
- Баллы
- 0
Двоичное исчисление
подскажите как решить:
№1 дано число в прямом коде
1) перевести в обратный код вот что получилось... вот что получилось
из описания википедии вроде правильно.
2) перевести то же число в дополнительный код. я так понял надо к предыдущему прибавить 1. но как это реализовать если получится например 00010111? как вообще реализовывается сумма?
числа типа long или int. хотя если есть что-то похожее на чисто бинарное представление то подскажите...
так же вопрос как реализовать такое
даны числа X Y в прямом коде. составить прогу которая выполняет арифметические операции в обратном и дополнительном кодах.
X+Y -X-Y X-Y Y-X
помогите пожалуйста или куском кода(возможно на паскале) или алгоритмом...
подскажите как решить:
№1 дано число в прямом коде
1) перевести в обратный код вот что получилось... вот что получилось
Код:
long a=0,b=0,c=-10100001; //с наше число b выходной результат
b=a;
if (c<0){
a=-c;
for(int i=7;i>-1;i--){
b=b+(~(long(a/pow(10,i)))+2)*pow(10,i);
a=a-(long((a/pow(10,i)))*pow(10,i));
}
}
2) перевести то же число в дополнительный код. я так понял надо к предыдущему прибавить 1. но как это реализовать если получится например 00010111? как вообще реализовывается сумма?
числа типа long или int. хотя если есть что-то похожее на чисто бинарное представление то подскажите...
так же вопрос как реализовать такое
даны числа X Y в прямом коде. составить прогу которая выполняет арифметические операции в обратном и дополнительном кодах.
X+Y -X-Y X-Y Y-X
помогите пожалуйста или куском кода(возможно на паскале) или алгоритмом...