@Bleck: użytkownik podaje wartość n, maksymalnie 20 i wtedy powstaje kwadrat o boku n z takimi właśnie przekątnymi do połowy jak np na tych dwóch zad po lewo. Tzn jak mądrze? Bo ja mam oprócz tych dwóch jeszcze kilka i zamysł był taki żeby tylko przerabiać ten kod żeby wychodziły podobne do tych dwóch zadań
  • Odpowiedz
via Wykop Mobilny (Android)
  • 3
@mateusz-zahorski: spokojnie, od początku. Jaki to jest asembler? Jakie dokładnie jest zadanie? Czego oczekujesz - pomocy w samodzielnym rozwiązaniu czy gotowca? Bo gotowiec to kosztuje pieniądze
  • Odpowiedz
@pyroxar: Wyciągnij paralizator i zaaplikuj go kilka razy profesorowi, za używanie przetłumaczoncyh na polski terminów informatycznych:
Być może te trzy linki pomogą 1, 2 i 3, jeśli nie to będą chociaż punktem wyjścia
  • Odpowiedz
@voith: > Twórca OpenTTD.

Nie. Chris Sawyer to twórca m.in. Transport Tycoon i Transport Tycoon Deluxe, a OpenTTD to klon tych gier napisany od podstaw przez miłośników serii.

RollerCoaster Tycoon działał na rozbudowanym silniku Transport Tycoona z '94, który to rzeczywiście prawie w całości był napisany w assemblerze x86.
  • Odpowiedz
@selenita66: Faktycznie, miałem na myśli TTC. Co do RCT to ja od drugiej części zaczynałem przygodę. Śmiesznie goście parki puszczali pawie na chodnik po zejściu z rollercoastera. ( ͡° ͜ʖ ͡°)
  • Odpowiedz
#assembler #asembler #x86 #x64 #programowanie #nasm

Mam coś takiego

hello:
  push rbp ; robimy ramkę stosu
  mov rbp, rsp
  sub rsp, 16 ; stack musi być wyrównany do 16 bajtów w SysV ABI, ofc w tym przykładzie w ogóle nie muszę sobie robić tych 16 bajtów, bo ich nie używam, ale wstawiam, żeby napisać ten komentarz o wyrównaniu stosu :P

  mov rcx, 10 ; loop counter
hello_loop:
  mov rdi, hello_fmt
  mov rsi,
Na początku mamy odjęte 8 (push rbp), potem 16 (sub rsp, 16), potem drugie 16 (podwójny push). To gdzie jest brakujące 8?


@zwei: Te 8 bajtów zostanie zajęte przez "return adress" pod który ma wrócic funkcja po wywołaniu. Jest to zazwyczaj odkładane na stosie przez "call" i zdejmowane przez "ret"
  • Odpowiedz
#asembler #cpp #jezykc #programowanie Takie pytanko, czy jeśli nie zależy mi na pamięci, to jest sens używania np. 8 bitowych char i 16 bitowych shortów? czy używać tylko 32 bitowych intów, bo i tak reszta rejestru musi zostać uzupełniona zerami czy coś.. a jak jest int to zajmuje cały 32 bitowy rejestr wiec powinno być szybicej bo nie trzeba nic uzupełniać.... mówimy oczywiście o systemach i kompilacjach 32 bitowych.. chyba, że kompilator
@ZawzietyRobaczek: Po pierwsze rejestry raczej nie wiele mają wspólnego z memory footprint. Lista rejestrów dostępnych w CPU jest zawsze taka sama, niezależnie od typu zmiennych, jakich używasz ( ͡° ͜ʖ ͡°) To powiedziawszy, typ zmiennej może mieć wpływ na performance. Szczegóły zależą pewnie od CPU, ale zwykle jeśl masz 32-bitowy CPU, najwydajniesze będą operacje na 32-bitowych zmiennych.
Jeśli chcesz zmiejszyć memory footprint, zainteresuj się paddingiem w używanych
  • Odpowiedz
Szukam jakiegoś kocura z Asemblera... Na moim roku, u chłopa ciężko jest zaliczyć przedmiot, przez te zdalne nauczanie, w sumie nic konkretnego nie robiliśmy, nawet nie mieliśmy zajęć zdalnych, mamy do wykonania dwa zadania i odpowiedź z nich, aczkolwiek jeszcze nikt u nas tego nie zaliczył, imo wykładowcy są dość wymagający jeśli chodzi o to.

Chodzi tutaj o tasm, turbo asemblera.
Pomoże ktoś? Szczerze mówiąc, mogę nawet zapłacić, byle to gówno