Вопросы по теме 'sign-extension'

Расширенная константа сдвига знака в MIPS
Почему мы сдвигаем на 2 знаковую расширенную 16-битную константу в инструкции ветвления в MIPS? Я смущен этой идеей. Что хорошего это смещение дает расширенной знаковой 16-битной константе. Вот картинка: С уважением
12117 просмотров

какой наиболее эффективный код для расширения больших целых чисел по знаку?
Я пишу библиотеку кода на языке ассемблера x86-64, чтобы предоставить все обычные побитовые, сдвиговые, логические, сравнительные, арифметические и математические функции для s0128 , s0256 , s0512 , s1024 , s2048 и s4096 целочисленных типов со...
286 просмотров
schedule 19.12.2022

Портативный способ печати шестнадцатеричных значений с помощью sprintf
У меня были некоторые проблемы с преобразованием двоичного кода в (печатаемый) шестнадцатеричный. Я нашел функциональный (для своей системы) способ написания кода, но мне нужно знать, переносим ли он на все системы (ОС и оборудование). Итак, это...
223 просмотров
schedule 14.03.2024

массив char в long приводит к неожиданному значению
Я попытался преобразовать массив байтов в длинный long readAndSkipLong(char*& b) { unsigned long ret = (b[0] << 56) | (b[1] << 48) | (b[2] << 40) | (b[3]<<32) | (b[4] << 24) | (b[5] << 16) | (b[6]...
297 просмотров

Как подписать расширение до двух, заданное в аргументах программы, в mips (сборка)
Я пытаюсь подписать дополнительный номер до двух, который я получаю из аргументов программы в мипсах. Как бы я это сделал?
893 просмотров

Почему расширение знака дополнения до 2 работает путем добавления копий знакового бита?
Давайте возьмем пример расширения знака 16-битного числа со знаком в 32-битный регистр, например mov $+/-5, %ax movswl %ax, %ebx . Возможны два случая: Старший бит равен нулю (число положительное). Это очень легко понять и интуитивно...
159 просмотров