-
-
-
Czy wie ktoś może w jaki sposób to zrobić? Chodzi mi o ppkt b) z zadania nr 2, w którym należy sprawdzić czy użytkownik wpisał 'tak' czy 'nie'.
_________________ "I spent a lot of money on booze, birds and fast cars. The rest I just squandered." - George Best
Gdyby Bóg był studentem, odpoczywałby przez sześć dni, a siódmego dnia zarwałby noc.
d41d8cd98f00b204e9800998ecf8427e
-
-
-
Ja z tym walczylem i sie poddalem. Probleme jest taki, ze la laduje adres napisu, ktory zawsze bedzie mial inny adres niz ten wczytany z klawiatury. A jaka instrukcja i czy wogole sie da porownywac zawartosc, to nie szukalem.
Obszedlem to tak, ze dla tak wpisuje 1 a dla nie 0 i po problemie, bo inty da sie spokojnie porownywac.
d41d8cd98f00b204e9800998ecf8427e
-
-
-
Postąpiłem dokładnie tak jak mks. Jak ktoś ma pomysł na zrobienie tego z podaniem T/N bez intów, to ma tutaj pole do popisu. Tyle, że więcej punktów za takie bajery na bank się nie dostanie, przynajmniej u Kwiatka.
_________________ Byle człowiek był szlachetny, całą zaś resztę można zdobyć talentem, wiedzą, rozsądkiem, geniuszem.
d41d8cd98f00b204e9800998ecf8427e
-
-
-
Zabrzmi dziwnie, ale jak załadujesz sobie "TAK" do jakiegoś rejestru, to odejmij od niego 18 (w skrajnych przypadkach 17). Chodzi o jakiś znak końca napisu, czy coś takiego ↕.
Z innych ciekawostek - jak już uda się to zrobić, to później wczytuje błędne napisy (jak ma sypać w pętli różnymi stringami, to ładuje tylko ten, który był ostatni. W moim przypadku zamiast znów zapytać, ile iterować, to wyświetla to, co podał użytkownik, jako odpowiedź na pytanie, czy powtórzyć pętle. Ktoś wie, jak to obejść?
_________________ Life is a game!
d41d8cd98f00b204e9800998ecf8427e
-
-
-
Kod: | .....
.data
.......
string_space: .space 5 # przydziela w pamieci miejsce o rozmiarze 5 bajtow
.....
main:
li $v0, 8 # read string
la $a0, string_space # do $a0 podajemy adres gdzie ma byc zapisany ...
# .... pobrany string
li $a1, 5 # do $a1 dlugosc
syscall
lb $t2, $a0 # pobieramy 1 bajt z adresu $a
beq $t2, 't', pobierz # jesli jest on rowny 't' to idziemy do pobierz
# jak nie to konczymy |
mozna pobierac lb wszystkie 3 litery ale pierwsza (t/n) chyba wystarczy
d41d8cd98f00b204e9800998ecf8427e
-
-
-
Moim zdaniem wystarczy po prostu tak: ładujesz po literze i każdą porównujesz z docelową...
d41d8cd98f00b204e9800998ecf8427e
-
-
-
kspacja napisał/a: | Moim zdaniem wystarczy po prostu tak: ładujesz po literze i każdą porównujesz z docelową... |
I to jest według mnie jedyny poprawny sposób. Wczytujesz literę ze stringa (poprzez komendę lb), potem inkrementujesz adres stringa i znowu poprzez lb porównujesz ...
I tak w kółko do momentu kiedy nie spotkasz znaku nowej linii ...
d41d8cd98f00b204e9800998ecf8427e
Powered by phpBB modified by Przemo © 2003 phpBB Group. Then, after many years modified again, this time by Piotrek © 2014 Strona wygenerowana w 20,1ms. Zapytań do SQL: 16
|