Я делаю игру, подобную Акинатору, в NASM.
Если я введу ответ на первый вопрос, он станет ответом на все вопросы
Это простой ответ «да» или «нет».
пожалуйста, помогите исправить это и дайте объяснение.
Ниже приведен код. >
section .data
; questions
q1 db 'Is your character real? (yes/no)', 0
q2 db 'Is your character human? (yes/no)', 0
q3 db 'Is your character male? (yes/no)', 0
q4 db 'Is your character fictional? (yes/no)', 0
q5 db 'Is your object/animal living? (yes/no)', 0
; answers
a1 db 'red', 0
a2 db 'jabol', 0
a3 db 'kuromi', 0
a4 db 'pencil', 0
section .bss
answer resb 2
section .text
global _start
_start:
; q1
mov eax, 4
mov ebx, 1
mov ecx, q1
mov edx, 24
int 0x80
mov eax, 3
mov ebx, 0
mov ecx, answer
mov edx, 2
int 0x80
cmp byte [answer], 'yes'
je human
cmp word [answer], 'no'
je object_animal
human:
; Question 2
mov eax, 4
mov ebx, 1
mov ecx, q3
mov edx, 30
int 0x80
mov eax, 3
mov ebx, 0
mov ecx, answer
mov edx, 2
int 0x80
cmp byte [answer], 'yes'
je male
cmp word [answer], 'no'
je female
male:
mov eax, 4
mov ebx, 1
mov ecx, a1
mov edx, 13
int 0x80
jmp exit
female:
mov eax, 4
mov ebx, 1
mov ecx, a2
mov edx, 8
int 0x80
jmp exit
object_animal:
; Question 3
mov eax, 4
mov ebx, 1
mov ecx, q5
mov edx, 30
int 0x80
mov eax, 3
mov ebx, 0
mov ecx, answer
mov edx, 2
int 0x80
cmp byte [answer], 'yes'
je living
cmp word [answer], 'no'
je non_living
living:
mov eax, 4
mov ebx, 1
mov ecx, a3
mov edx, 5
int 0x80
jmp exit
non_living:
mov eax, 4
mov ebx, 1
mov ecx, a4
mov edx, 6
int 0x80
jmp exit
exit:
mov eax, 1
xor ebx, ebx
int 0x80
Подробнее здесь: https://stackoverflow.com/questions/792 ... ted-as-the
Ввод терминала с системным вызовом read: ответ на первый вопрос рассматривается как ответ на все вопросы? ⇐ Linux
1733557911
Anonymous
Я делаю игру, подобную Акинатору, в NASM.
Если я введу ответ на первый вопрос, он станет ответом на все вопросы
Это простой ответ «да» или «нет».
пожалуйста, помогите исправить это и дайте объяснение.
Ниже приведен код. >
section .data
; questions
q1 db 'Is your character real? (yes/no)', 0
q2 db 'Is your character human? (yes/no)', 0
q3 db 'Is your character male? (yes/no)', 0
q4 db 'Is your character fictional? (yes/no)', 0
q5 db 'Is your object/animal living? (yes/no)', 0
; answers
a1 db 'red', 0
a2 db 'jabol', 0
a3 db 'kuromi', 0
a4 db 'pencil', 0
section .bss
answer resb 2
section .text
global _start
_start:
; q1
mov eax, 4
mov ebx, 1
mov ecx, q1
mov edx, 24
int 0x80
mov eax, 3
mov ebx, 0
mov ecx, answer
mov edx, 2
int 0x80
cmp byte [answer], 'yes'
je human
cmp word [answer], 'no'
je object_animal
human:
; Question 2
mov eax, 4
mov ebx, 1
mov ecx, q3
mov edx, 30
int 0x80
mov eax, 3
mov ebx, 0
mov ecx, answer
mov edx, 2
int 0x80
cmp byte [answer], 'yes'
je male
cmp word [answer], 'no'
je female
male:
mov eax, 4
mov ebx, 1
mov ecx, a1
mov edx, 13
int 0x80
jmp exit
female:
mov eax, 4
mov ebx, 1
mov ecx, a2
mov edx, 8
int 0x80
jmp exit
object_animal:
; Question 3
mov eax, 4
mov ebx, 1
mov ecx, q5
mov edx, 30
int 0x80
mov eax, 3
mov ebx, 0
mov ecx, answer
mov edx, 2
int 0x80
cmp byte [answer], 'yes'
je living
cmp word [answer], 'no'
je non_living
living:
mov eax, 4
mov ebx, 1
mov ecx, a3
mov edx, 5
int 0x80
jmp exit
non_living:
mov eax, 4
mov ebx, 1
mov ecx, a4
mov edx, 6
int 0x80
jmp exit
exit:
mov eax, 1
xor ebx, ebx
int 0x80
Подробнее здесь: [url]https://stackoverflow.com/questions/79260198/terminal-input-with-read-system-call-answer-to-first-question-is-treated-as-the[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия