y86

    0зной

    1ответ

    Я делаю проект класса, который я должен взять на C-код, включите его в сборке x86-64, а затем измените его на Y86. В этом я должен вернуть сумму элементов в связанном списке в rax. Однако, когда я пыт

    0зной

    2ответ

    Я знаю, что rmmovl можно использовать следующим образом: rmmovl %ecx, 4(%edx) Но как я могу динамически задать количество битов для перемещения вниз по стеку (4 в данном случае)? Я попытался установ

    0зной

    1ответ

    Я пишу программу в y86, но я получаю некоторые странные ошибки. Это говорит о третьей строке «неверная строка». irmovl 0, %eax #clear eax andl %edi, %edi jg .L9 jmp .L7 Эти типы о

    1зной

    1ответ

    Я пытаюсь развернуть цикл в коде y86, но при попытке запустить тестовую программу я получаю 2 разных значения. Регламент. код: xorq %rax,%rax # count = 0; andq %rdx,%rdx # len <= 0? jle Do

    0зной

    2ответ

    У меня есть следующий код. Может кто-нибудь объяснить мне вопросы в скобках? # Execution begins at address 0 (why?) .pos 0 irmovq stack, %rsp # Set up stack pointer (how can i move the word "stack"

    0зной

    1ответ

    Мне нужно создать программу, которая сортирует массив целых чисел в порядке возрастания. Достаточно простая проблема в C, и нам предоставляется код. void bubble(int *data, int count) { int i, last;

    2зной

    1ответ

    У меня возникли проблемы с пониманием того, как определяется местоположение адреса при декодировании с сборки на Y86. В примере, 0x030 0x030: 6300 # xorq %rax , %rax 0x032: 500300010000000000

    0зной

    3ответ

    Я ищу, чтобы воссоздать инструкцию x86 shl dest, src на языке ассемблера y86. В частности, мне нужно сдвинуть бит бит 4 бит влево. Может ли кто-нибудь помочь мне понять это?