Главная /
Ассемблер в Linux для программистов на C /
/**************************************** start of sample1.s *******************************/ .data some_var: .long 0x00000033 test_var: .long 0x00000032, 0x00000033, 0x00000034 dummy_var: .long 0x00000033, 0x00000034, 0x00000035 .text .global main main:
/**************************************** start of sample1.s *******************************/
.data
some_var:
.long 0x00000033
test_var:
.long 0x00000032, 0x00000033, 0x00000034
dummy_var:
.long 0x00000033, 0x00000034, 0x00000035
.text
.global main
main:
1 leal dummy_var, %eax
2 movl $0x00000033 %eax
3 leal 0x00000033, %eax
4 movl $dummy_var, %eax
5 movl $test_var, %eax
6 pushl $0x33
7 popl %eax
/**************************************** end of sample1.s *******************************/
В результате каких операций в регистр eax будет занесено значение 0x33?
вопрос
Правильный ответ:
1
2
3
4
5
7
Сложность вопроса
95
Сложность курса: Ассемблер в Linux для программистов на C
50
Оценить вопрос
Комментарии:
Аноним
Если бы не эти ответы - я бы не осилил c этими тестами интуит.
29 май 2018
Аноним
Пишет вам преподаватель! Прямо сейчас удалите ответы интуит. Пожалуйста
24 янв 2017
Другие ответы на вопросы из темы программирование интуит.
- # /**************************************** start of sample1.s *******************************/ .data some_var: .long 0x00000072 other_var: .long 0x00000001, 0x00000002, 0x00000003 .text .globl main main: movl $0x48, %eax leal $0x32, %eax leal some_var, %eax leal other_var + 4, %eax leal some_var, $ecx /**************************************** end of sample1.s *******************************/ Какие команды приведённого ассемберного кода приведут к ошибкам при компиляции?
- # /**************************************** start of sample1.s *******************************/ .data some_var: .long 0x00000052 other_var: .long 0x00000071, 0x00000072, 0x00000073 .text .global main main: movl $(other_var+4), %ecx movl $some_var, %edx /**************************************** end of sample1.s *******************************/ Какое значение окажется в регистре ecx после выполнения вышеописанных строк кода?
- # /**************************************** start of sample1.s *******************************/ .data some_var: .long 0x00000001 .text .global main main: 1 movl $3, %ecx 2 addl $1, %ecx 3 addl $4, %ecx 4 movl $some_var, %eax 5 leal 3(%eax), %ecx /**************************************** end of sample1.s *******************************/ В результате каких операций в регистр ecx будет занесено значение 0x4?
- # /**************************************** start of sample1.s *******************************/ .data printf_format: .string "%d\n " .text .globl main main: 1 movl $0, %eax 2 xorl %eax, %eax 3 subl %eax, %eax 4 testl %eax, %eax 5 orl %eax, %eax ret /**************************************** end of sample1.s *******************************/ Какие из инструкций в вышеприведённой программе обнуляют регистр eax?
- # На что необходимо обратить внимание при работе с структурами?