@kuskoman: Jeśli zamierzasz pisać tez assembler to zwróć bardzo uwagę na adresację skoków relatywnych. Ze względu na to, że instrukcje mają zmienną długość w zaleznosci od dystansu skoku będziesz musiał się nieco natrudzić by zawsze wskazywały na prawidłowe miejsce w pamięci. W moim przypadku zrobiłem to tak, że wybieram w pierwszej fazie zawsze najkrótsze instrukcje skoków, które mogą się rozszerzyć lub tez nie, zbieram labele i ich offsety. W następnych
  • Odpowiedz
Siemano Mirki z tagu #programowanie. Czy da się jakoś określić ile instrukcji jest wykonywanych przez procesor podczas wykonywania jednego rozkazu? Chodzi mi o to że czasami jeden rozkaz może się składać np. z 2, a czasami z 3 instrukcji. Czy da się to jakoś określić na podstawie kodu? #assembler #pytaniedoeksperta
  • 2
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Majonez33: cykli, nie instrukcji. Dodatkowo możesz zmierzyć ilość cykli przed i po, ale na małych ilościach danych nic tam nie będzie widać (tak się np. mierzy wydajność prymitywów kryptograficznych).
  • Odpowiedz
via Wykop Mobilny (Android)
  • 10
ostatnim pojawił się na #demoscena kkrieger - gra FPS w 96k kodu. nieźle. nieźle.

a co powiecie na bardzo prostego chodzonego "Dooma" (ale bez możliwości strzelania i interakcji) w 128... bajtach? nie żadne KILO. 128 bajtów. 128 bajtów. więcej znaków ma SMS czy jedna wiadomość na Twitterze (pomijając że tam są dozwolone również wiekobajtowe znaki Unicode).

co jest fantastyczne w tej produkcji, że cały kod w postaci zapisanych w heksie bajtów mieści
secret_passenger - ostatnim pojawił się na #demoscena kkrieger - gra FPS w 96k kodu. ...
  • 4
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

via Wykop Mobilny (Android)
  • 1
@les: dyskutowaliśmy nawet na ten temat tutaj - przy okazji jakiegoś innego intra w 64 bajtach.

ta wersja wydaje się nieco bardziej dopracowana. ale fakt, 64 bajty to już jest kosmiczny kosmos, trudny do ogarnięcia dla kogoś kto rozumie jak to mało kodu jest.

do myślenia daje to że nagłówki części formatów bywają znacznie większe
  • Odpowiedz
Masz ochotę prześledzić eksperyment, który prawdopodobnie Ci się nie przyda? To sprawdź, jak wywołać Assemblera z Javy, wykorzystując do tego C ( ͡° ͜ʖ ͡°) PS: jeśli wymyślisz sensowne zastosowanie tej metody, to daj znać xD

https://bulldogjob.pl/news/954-assembly-w-javie-w-c

#java #assembler #jezykc #programowanie
Bulldogjob - Masz ochotę prześledzić eksperyment, który prawdopodobnie Ci się nie prz...

źródło: comment_1582115879lBh3ivv3kgjpiOC8eVpdL4.jpg

Pobierz
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Potrzebuje pomocy z konfiguracją assemblera.
Chciałbym napisać hello worda w GNU assembler, w tym celu ściągnąłem virtualboxa i zainstalowałem na nim ubuntu, na tym moja wiedza się kończy. Powinienem teraz ściągnąć jakiś kompilator(jaki), czy jakoś kompilować przez konsole?
#assembler #programowanie
  • 4
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@ChoNoTu: ale dokładnie o to chodzi - "nie umiem" mipsa ale widziałem w życiu dość assemblera embedded że jeżeli problem jest typowy może mógłbym pomóc.
Ale jak nie wrzucasz opisu problemu od razu nie sprawdzę tego bo na pytanie "czy umiem mipsa" odpowiedź jest "nie".
To jest bardzo częsty błąd zielonek w zadawaniu pytań z programowania. Nie piszę tego złośliwie tylko żebyś się zastanowił. A i pomiń wulgaryzmy to jest
  • Odpowiedz
#programowanie #assembler

Składnia AT&T jest absolutnie obrzydliwa, ale niestety clang wspiera tylko tę w inline asm. Czy są jakieś szczególne korzyści wynikające z jej stosowania?
  • 2
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

w inline asm


@Hauleth: czytaj dokładnie zanim napiszesz warkliwy komentarz. Albo spróbuj sobie skompilować w ten sposób wstawkę z intelowską składnią

clang: error: unsupported option '--x86-asm-syntax=intel' - to jest opcja sprzed ery kamienia łupanego, to
  • Odpowiedz
.globl _main
_main:
  # pierwsza wersja - wstawiam po prostu wszystko inline
  lea rdi, [rip + L_.hello]
  xor rax, rax
  call _printf
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Mam plik hex zgrany z pamięci EEPROM. Potrzebuję zmienić w nim jedną czterocyfrową wartość liczbową, ale próbowałem wszystkiego i nie mogę jej znaleźć.


Jedyne co widzę oprócz randomowych ciągów znaków w edytorze to podpis producenta z datą. Czy muszę zdeasemblować ten kod żeby ustalić gdzie może być zapisywana ta liczba?
#mikrokontrolery
#assembler
#arduino
  • 18
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Potrzebuję zmienić w nim jedną czterocyfrową wartość liczbową, ale próbowałem wszystkiego i nie mogę jej znaleźć.


@tallman: i liczysz, że jest tu jakaś wróżka i powie ci zmień komórkę CA27 na FF?
Liczba, której szukasz może być stałą wpisaną w program, ale też może być wynikiem obliczeń.

  • Odpowiedz
Mirki,
chciałbym nauczyć się assemblera, głownie po to aby rozpocząć przygodę z reverse engeniring, do tego potrzebny jest assembler o ile się nie mylę. Chciałbym prosty tut dla kompletnie zielonych. Proste i logiczne wytłumaczenie zagadnień bez żadnej wiedzy.

Wołam eksperta @Gynvael

#assembler #it #programowanie
  • 9
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@xberkinus: nie wróże przyszłości w tej dziedzinie skoro wpisanie w google "how to start out in reverse engineering" cię przerasta. Ta robota to głownie googlanie i sprawdzanie przeróżnych rzeczy i nie ma drogi na skróty, że zapytasz eksperta i wskaże ci rozwiązanie - bo tutaj sam je musisz odkryć
  • Odpowiedz