• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Dlaczego wyskakuje taki błąd? ( NASM )

VPS Starter Arubacloud
0 głosów
155 wizyt
pytanie zadane 21 listopada 2016 w Assembler przez Philip Bywalec (2,320 p.)

extern scanf
global main

section .data

znak db 0
format db "%lld", 0
test db "k", 0 - ta 8 linia

Witajce
Wyskakuje mi taki bład :

program.asm:8: error: comma, colon or end of line expected

Chodzi o brak znaku interpunkcyjnego tak? Poradzicie może, gdzie dokładnie?

( to jest oczywiście fragment kodu )

1 odpowiedź

0 głosów
odpowiedź 21 listopada 2016 przez Eryk Andrzejewski Mędrzec (164,260 p.)

Błąd wyskakuje dlatego, że... istnieje w architekturze x86 instrukcja procesora o nazwie test laugh

Zmień więc nazwę tej etykiety na jakąś inną.

Tutaj możesz sobie poczytać https://en.wikipedia.org/wiki/TEST_(x86_instruction)

Albo tu http://www.intel.com/Assets/en_US/PDF/manual/253667.pdf

komentarz 21 listopada 2016 przez Philip Bywalec (2,320 p.)
Faktycznie :P. Jednakże wyskakuje mi inny błąd.

Mam jeszcze jedno pytanko. Czy w NASM-ie można porównywać znaki? Wiedziałbyś może jak to zrobić? ( albo podesłać odnosnik do rozwiązania )

Mam mianowicie takie zadanie:

Napisz program wczytujący znaki z klawiatury do póki nie wprowadzisz 'k'.

Próbuje wpisując

cmp ( rejestr z jednym znakiem ) , ( rejestr z drugim znakiem )

je _udalosie

 

Jednakże mam błąd: help.asm:22: error: invalid combination of opcode and operands
komentarz 21 listopada 2016 przez Eryk Andrzejewski Mędrzec (164,260 p.)

Podaj proszę cały kod, bo ciężko się domyślać kiedy się go nie ma całego przed sobą :)

komentarz 21 listopada 2016 przez Philip Bywalec (2,320 p.)
extern scanf
global main

section .data

znak db 0
format db "%lld", 0
etykieta1 db "k", 0

section .text

main:

mov edi, etykieta1
wpisywanie:
mov rdi, format
mov rsi, znak
mov rax, 0

call scanf

cmp rsi, edi
je wpisywanie

mov rax, 0
ret

Oto on.

Podobne pytania

0 głosów
1 odpowiedź 146 wizyt
pytanie zadane 18 stycznia 2017 w Assembler przez Philip Bywalec (2,320 p.)
0 głosów
1 odpowiedź 256 wizyt
pytanie zadane 19 stycznia 2021 w Assembler przez tonn204 Mądrala (7,440 p.)
0 głosów
1 odpowiedź 499 wizyt

92,453 zapytań

141,262 odpowiedzi

319,088 komentarzy

61,854 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...