{"id":1726131,"user_name":null,"score":0,"text":"@superdurszlak: Flagi do debugowania nie wp\u0142ywaj\u0105 na posta\u0107 kodu wynikowego, poza tym si\u0119 zgodz\u0119. Na x86 warto\u015b\u0107 zwracana znajduje si\u0119 w rejestrze `eax` je\u015bli jest niewi\u0119ksza ni\u017c 4 bajty, a w przeciwnym wypadku funkcja dostaje jeden \"dodatkowy\" argument - pierwszym argumentem staje si\u0119 wska\u017anik na miejsce gdzie zapisa\u0107 warto\u015b\u0107 wynikow\u0105.\n\nWszystko jest opisane tutaj w tym PDFie, od strony 40.\nhttp:\/\/www.sco.com\/developers\/devspecs\/abi386-4.pdf\n\n\nNa marginesie, zupe\u0142nie nie rozumiem po co uczy\u0107 si\u0119 teraz 32 bitowego assemblera zamiast wersji 64 bitowej. Nie kojarz\u0119 kiedy ostatnio uruchamia\u0142em jaki\u015b kod 32 bitowy poza starymi grami. 64 bitowa wersja jest r\u00f3wnie\u017c w wielu aspektach prostsza (np. \u0142atwiej odgadn\u0105\u0107 jakie argumenty przyjmuje funkcja, gdy\u017c pierwsze 6 argument\u00f3w jest odk\u0142adane w rejestrach a nie na stosie, zatem w momencie wywo\u0142ania zazwyczaj od razu wida\u0107 co w tych rejestrach jest umieszczane, w.p.p. do stosu na kt\u00f3rym potencjalnie mog\u0142y by\u0107 ju\u017c od\u0142o\u017cone oczekiwane warto\u015bci.","edit_count":0,"is_voted":null,"is_accepted":null,"is_subscribed":null,"user_id":57366,"deleter_name":null,"delete_reason":null,"orderingScore":0,"created_at":"2020-11-22T16:04:33+01:00","updated_at":"2020-11-22T16:04:33+01:00","deleted_at":null,"user":{"id":57366,"name":"enedil","is_online":false,"allow_sig":1,"allow_count":1,"allow_smilies":1,"posts":1029,"visited_at":"2026-05-21T11:18:30.000000Z","created_at":"2013-07-09T22:44:09.000000Z","initials":"EN","is_verified":false,"is_deleted":false,"is_incognito":false,"is_blocked":false,"is_blocked_perm":false,"deleted_at":null,"photo":"\/uploads\/photo\/59\/5970d9e7ef259.jpg"},"html":"<p><a class=\"mention\" data-user-id=\"92941\" href=\"http:\/\/static.175.128.202.116.clients.your-server.de\/Profile\/92941\" rel=\"nofollow\" target=\"_blank\">@superdurszlak<\/a>: Flagi do debugowania nie wp\u0142ywaj\u0105 na posta\u0107 kodu wynikowego, poza tym si\u0119 zgodz\u0119. Na x86 warto\u015b\u0107 zwracana znajduje si\u0119 w rejestrze <code>eax<\/code> je\u015bli jest niewi\u0119ksza ni\u017c 4 bajty, a w przeciwnym wypadku funkcja dostaje jeden \"dodatkowy\" argument - pierwszym argumentem staje si\u0119 wska\u017anik na miejsce gdzie zapisa\u0107 warto\u015b\u0107 wynikow\u0105.<\/p>\n<p>Wszystko jest opisane tutaj w tym PDFie, od strony 40.<br \/>\n<a href=\"http:\/\/www.sco.com\/developers\/devspecs\/abi386-4.pdf\" rel=\"nofollow\" target=\"_blank\">http:\/\/www.sco.com\/developers\/devspecs\/abi386-4.pdf<\/a><\/p>\n<p>Na marginesie, zupe\u0142nie nie rozumiem po co uczy\u0107 si\u0119 teraz 32 bitowego assemblera zamiast wersji 64 bitowej. Nie kojarz\u0119 kiedy ostatnio uruchamia\u0142em jaki\u015b kod 32 bitowy poza starymi grami. 64 bitowa wersja jest r\u00f3wnie\u017c w wielu aspektach prostsza (np. \u0142atwiej odgadn\u0105\u0107 jakie argumenty przyjmuje funkcja, gdy\u017c pierwsze 6 argument\u00f3w jest odk\u0142adane w rejestrach a nie na stosie, zatem w momencie wywo\u0142ania zazwyczaj od razu wida\u0107 co w tych rejestrach jest umieszczane, w.p.p. do stosu na kt\u00f3rym potencjalnie mog\u0142y by\u0107 ju\u017c od\u0142o\u017cone oczekiwane warto\u015bci.<\/p>\n","url":"http:\/\/static.175.128.202.116.clients.your-server.de\/Forum\/Inne\/346404-ramka_stosu_na_przykladzie_funkcji_c?p=1726131#id1726131","is_locked":false,"permissions":{"write":false,"delete":false,"update":false,"accept":false},"moderatorPermissions":{"delete":false,"update":false,"accept":false,"merge":false,"sticky":false,"admAccess":false},"comments":{"654838":{"id":654838,"text":"Poprawi\u0142em, dawno tego nie robi\u0142em i ju\u017c troch\u0119 pozapomina\u0142em","html":"Poprawi\u0142em, dawno tego nie robi\u0142em i ju\u017c troch\u0119 pozapomina\u0142em\n","post_id":1726131,"created_at":"2020-11-22T17:31:23+01:00","updated_at":"2020-11-22T17:31:23+01:00","user":{"id":92941,"name":"superdurszlak","is_online":false,"initials":"SU","is_verified":null,"is_deleted":false,"is_incognito":false,"is_blocked":false,"is_blocked_perm":false,"deleted_at":null,"photo":"\/uploads\/photo\/9uhhaiU0UAQkoxqDfGi8NLeSmIPeGYxOGIgy1CXQ.jpg"},"url":"\/Forum\/Inne\/346404-ramka_stosu_na_przykladzie_funkcji_c?p=1726131#comment-654838","metadata":"eyJpdiI6IkhPbkMvZnhQUmZsTW9MN2pYK2REWFE9PSIsInZhbHVlIjoibkJUUHh2QzJHQXhGSzVXaHVCTzhUL1RiYWN6cXplQlZTNXYybTk3NjVPdmhEb2pwL0M1TllrdlpXZ0lHbkFUbldiR1M1c0NIZ0ZXOXIwSmJHQnpwbWlmcWlDdUhUTzVabGZJeS81OW12SUFrbnNUUCtVQXlvQ01KeTFaTGJMLzdGbW43dVdBMDFpU3JGQjkwUWpSMEVmeE9OQ2lsRytFQ2tSbnltS3NnMnpNPSIsIm1hYyI6IjhmM2MxOGUxN2ZjNDcwNzlhYjMzOWJkY2NlZTNjMmM4ZDJiZDcyZWQ5OWM0YWJkZGRjYmE2ODlmMjI4NDliNWMiLCJ0YWciOiIifQ==","votes":0,"ownVote":false,"voters":[]}},"comments_count":1,"assets":[],"metadata":"eyJpdiI6IjFqdEdVQ2NwcCtvcm5pK1ZFT3FFR2c9PSIsInZhbHVlIjoibHpwVTBycm80Q3VSdnZYOFdURmcycHNNbVpBcmxsQUJOcU5IUGFDUm9SMCtSVGR1VVU0aTlTcEl6Y1ZKd1J0b1p5aWdXTHNaNEo2K2R2RW9ob2g4Z2xaQVBpWTZURXlVMnVOMTF3aUF3d1poMlNENGh4UEZCc25RSGhaY3FET1EiLCJtYWMiOiJkMDViMTg2MWU2ZjI5ZWY3N2YxNzdmNjQ3MGFlMzJiMzcwM2M2NWRkM2I0NDhkNWE3OWU0NTdmOGE1ZGUwNDI1IiwidGFnIjoiIn0=","has_review":false,"review_style":"info","parentPostId":null,"childrenFolded":false,"type":"regular","highlighted":false}