xor c



Автор Puzon задал вопрос в разделе Другие языки и технологии

Вопрос по xor на Си и получил лучший ответ

Ответ от [гуру]
Для начала.. . Тип переменных должен быть Byte... (Зачеркнуть)
int B= 0x65;
int A= 0x29;
int C = A ^ B ;
printf("C=%d ",C,"
");
int D = C ^ A ;
printf("D=%d",D);
Во - Вторых во время отладки (для себя для того, чтобы разобраться) неплохо было бы выводить все 4 переменных после каждого вычисления (на первых порах - не помешает...; -)
Krab Bark -> Я не в курсе, я "Дельфин" 😉

Ответ от Krab Bark[гуру]
"Скорее всего я как-то не так задаю сами числа"
Вообще-то это запись в десятичной системе счисления.
Серж, в С нет типа byte...
P.S. Вот тебе твой тест в работающем виде (числа в десятичном виде)
#include<stdio.h>
main(){
int B= 01100101, A= 00101001, C = A ^ B, D = C ^ A;
printf("C=%d D=%d B=%d",C,D,B); getchar();}
P.S. "Krab Bark -> Я не в курсе, я "Дельфин" ;-)"
Привет морскому собрату 🙂

Ответ от Shade[гуру]
1. по-уму то надо использовать не int, а беззнаковый тип, хотя в данном случае на результате это никак не отразится, в ряде случаев может только на том, что выведет printf в таком варианте.
2. int B=01100101; т. е. B=1100101, т. е. B+1=1100102. Я хочу сказать, что это не бинарное представление числа, а самое что нинаесть десятичное. Чтобы это записать в бинарях: unsigned char B=0b1100101;
3. по поводу printf - тут тоже лучше использовать беззнаковое или шестнадцатиричное представление:
printf("C=%u (0x%X)
", C, C); // если С объявлен как unsigned или signed int (в данном случае не имеет никакого значения)
или
printf("C=%hhu (0x%hhX)", C, C); // что правильней для знакового или беззнакового char
To Капитан Гугл,
правда чтоли? ты б хоть почитал чего-нибудь чтоли, прежде чем херню всякую писать.

Ответ от Капитан Гугл[гуру]
Вообще-то, в C/C++ на 0 начинаются восьмиричные литералы (что, Краб и shade, съели?) , а двоичных нет вообще.. . Так что или добавляй свою функцию вывода, или учись читать шестнадцатиричные (восьмиричные были актуальны для 9-битовых байтов, сейчас не используемых) :
int B= 0x65;
int A= 0x29;
int C = A ^ B ;
printf("C=%x
",C); //но выводить 16-ричные, как и 8-ричные через %o, можно
int D = C ^ A ;
printf("D=%x",D); //или cout << "D=" << hex << D;

Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с ответами на Ваш вопрос: Вопрос по xor на Си
спросили в Delphi Textron
Существуют ли в Delphi стандартные хэш-функции? Например, как MD5 в PHP.
Вот модуль, вычисляющий MD5 в Delphi. Полностью могу прислать по почте. Если надо - пиши ( :-))))
подробнее...
спросили в Шифр
XOR шифрование. Как работает этот алгоритм (каким образом он шифрует)
примере программы на Delphi.

var key, text, longkey, result : string;
i :
подробнее...

Как это расшифровать? ибо что это? mov ax,2C16h mov bx,0ECC8h not bx xor ax,bx not ax ax = ? bx = ?
Это ассемблер.
Нажимаем Win+R вводим debug нажимаем enter
видим черное окошкоподробнее...

[C++] Логическое ИЛИ
if (оne == 1 ^^ two == 2)
Не?

Jurijus Zaksas
Искусственный Интеллектподробнее...
спросили в G Unit Inheritance
какие символы входят в состав алфавита языка паскаль
строчные и прописные латинские буквы:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Zподробнее...
Ответ от 3 ответа[гуру]
Привет! Вот еще темы с похожими вопросами:

ИНФОРМАТИКА Помогите!!!
Эльф, оператор "^" - это побитовый оператор исключающий ИЛИ (XOR), не путайте с возведением в
подробнее...
спросили в Цифры
Кто придумал арабские цифры?
Цифры современной десятичной системы носят название арабских, поскольку европейцы заимствовали их у
подробнее...
спросили в Цикл
С++, Чем отличаеться цикл for, от while?
По сути своей мало чем отличаются, нюансами - сильно отличаются.
while (условное выражение)подробнее...

Подскажите немецкие торент - трекеры для скачивания фильмов на немецком языкея не живу в Германии
Смотри здесь

Все равно прийдется кучу ссылок перебирать, но вот первый сайт который
подробнее...
спросили в ITBA
Деление отрицательного числа. Ассемблер
Денис Евдоченко, не обижайтесь, но здесь нужно просто правильно применить знаковое деление, а не
подробнее...
Операторы в C и C++ на Википедии
Посмотрите статью на википедии про Операторы в C и C++
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*