Вопросы по теме 'sign-extension'
Язык ассемблера: cbw
Я не уверен, что на самом деле делает команда cbw . У меня есть фрагмент кода:
mov ax,0FF0h
cbw
idiv ah
Как меняется значение топора после cbw?
8576 просмотров
schedule
06.04.2023
Какие реальные варианты использования существуют для арифметического сдвига правого бита?
Я наткнулся на вопрос, который спрашивает, были ли вы когда-либо пришлось использовать сдвиг бит в реальных проектах . Я довольно широко использовал битовые сдвиги во многих проектах, однако мне никогда не приходилось использовать арифметический...
1626 просмотров
schedule
19.02.2022
Что происходит в этом ассемблерном коде?
Предыстория : я выполняю задание «бинарная бомба», в котором я должен пройти 6 различных фаз, чтобы «обезвредить» бомбу. Я могу использовать отладчик, чтобы отслеживать значения и проходить каждую строку сборки. Я застрял на втором этапе.
Цель...
2671 просмотров
schedule
11.01.2024
подписать расширение с помощью конкатенации
Мне нужно сделать расширение знака с 4-битного числа на 32-битное число. Я пытаюсь повторить MSB 28 раз следующим образом:
assign x={28'b{a[3]},a[3:0]};
Но я получаю сообщение об ошибке:
Синтаксическая ошибка рядом с "{"
x...
2051 просмотров
schedule
29.08.2022
Ollydbg: расширение знака с помощью Movsx
Знак Movsx расширяет регистр с помощью 1 , верно?
Итак, почему в Ollydbg я получил это:
До:
После:
У меня должно быть FFFFFF65 вместо 00000065 в ECX нет?
Благодарю вас !
103 просмотров
schedule
17.01.2024
Специализация битового поля в python
Вот код на С++:
void sign_extending(int x)
{
int r; // resulting sign extended number goes here
struct {signed int x:5 ;} s;
r = s.x = x;
cout << r;
}
void Run()
{
int x=29; // this 29 is -3 ( 11101 ) in 5 bits
// convert this...
1062 просмотров
schedule
19.08.2022
Знак, простирающийся от переменной разрядности
Вот код на С++:
#include <iostream>
#include<limits.h>
using namespace std;
void sign_extending(int x,unsigned b)
{
int r; // resulting sign-extended number
int const m = CHAR_BIT * sizeof(x) - b;
r = (x << m)...
1671 просмотров
schedule
07.07.2023
Как выполнить расширение бит в системе Verilog?
Я хочу реплицировать один бит в определенное время, используя оператор репликации {}, но я получаю только первый бит, как я хочу, а другие - нули, независимо от того, равен ли бит нулю или единице.
module(logic output [7:0] a);
assign a={8{1}};...
2500 просмотров
schedule
03.08.2023
Как безопасно извлечь поле со знаком из uint32_t в число со знаком (int или uint32_t)
У меня есть проект, в котором я получаю вектор 32-битных инструкций ARM, и часть инструкций (значения смещения) необходимо читать как числа со знаком (дополнение до двух) вместо чисел без знака.
Я использовал вектор uint32_t , потому что все коды...
394 просмотров
schedule
04.07.2022