Abuse Melding

Je hebt een klacht over de onderstaande posting:

28-06-2024, 13:33 door Anoniem

Door Anoniem: [knip - lol van low-level code etc] Assembler heeft een plaats in programmacode voor mij. En debuggers zijn leuk en krachtig naar mijn mening. Neem bijvoorbeeld deze code in pseudo C: unsigned char c; for(c=0; c<=255; c++) { printf("%c", c); } Dit is om een ascii-tabel te printen. Waar het fout gaat is dat als c==255, deze het ascii teken voor 255 print, dan c ophoogt naar 256, maar dit kan niet dus het wordt 0. Waarna dit simpele programma nooit termineert. Met een debugger kan je dit zo zien gebeuren, maar in een hogere programmeertaal is dit heel moeilijk om op te lossen omdat het menselijk brein niet zo werkt. Het gaat ook alleen maar fout wanneer je een 'portable assembler' zoals C gebruikt. Je kiest (en krijgt) een datatype met een beperkte range waarbij de overflow een wrap-around doet, laat dat gebeuren - en compiler en runtime doen er niks aan want het werkt gewoon zoals het hoort. (of mag zo werken wegens 'undefined behaviour') . In een beetje hogere taal bestaan deze ...

Beschrijf je klacht (Optioneel):

captcha