Aktywne Wpisy

_Beskid_ +6
Tak gadacie na górali, że gwara, że muzyki góralskiej słuchać się nie da. A tak naprawdę jesteśmy kwintesencją polskiego chrześcijaństwa, szczerze wierzymy, regularnie chodzimy na msze święte, żyjemy dobrze z księdzem proboszczem, mamy w domu religijne obrazy i inne symbole wiary, wszyscy we wsi przyjmują księdza, nie ma że ktoś jest niewierzący czy innego wyznania. Szanujemy się.

Solsith +45
źródło: 1000002666
Pobierz



na swoje numeryczne opcody, ale tutaj mam problem - wyifowac po prostu to, i zrobic np
if(!strcmp(op, "mov"))...
else if(!strcmp(op,"xor"))
lub sa jakies inne bardziej przejrzyste metody na zrobienie czegos takiego?
#programowanie #jezykc
tzn. w skrócie imo to coś takiego:
0. musisz znaleźć funkcję haszującą(bądź stworzyć samemu, ale warto być świadomym istnienia kolizji - trochę przypał, gdy znalezienie mov i cmp zwróci numer tej samej pozycji w tablicy)
1. na początku gdzieś tworzysz sobie swoją tablicę tab[i], gdzie i = hash(nazwa_opkodu), a tab[i] to numer opkodu
2. zamiast setki ifów sprawdzasz w tablicy w jednym kroku czy istnieje tab[i] dla
//str to instrukcja, char*, od 1 do 4 znakow.int command = __builtin_bswap32(*(int*)str)>>((4-strlen(str))*8);
switch(command) {