Abuse Melding

Je hebt een klacht over de onderstaande posting:

17-08-2016, 11:59 door Erik van Straten

@Goeroehoedjes: je hebt gelijk. In C is if een conditionele goto en levert geen resultaat op: if (if (1)) levert dan ook een compile time error op. Ter illustratie, op (imaginair) CPU niveau gebeurt het volgende (X is een "gewoon" CPU register, en S is het CPU statusregister), ervan uitgaande dat a en b signed integers zijn met een bitlengte <= de lengte van het X register: 1) Laad in X de waarde van a en overschrijf de S bits IsNul en IsNegatief met de juiste waarde 2) Tel op bij X de waarde van b en overschrijf de S bits Overflow, IsNul en IsNegatief met de juiste waarde 3) Optioneel (C compilers genereren deze instructie niet): spring naar foutcode bij Overflow 4) Trek af van X de waarde van a en overschrijf de S bits Overflow, IsNul en IsNegatief met de juiste waarde 5) Optioneel (C compilers genereren deze instructie niet): spring naar foutcode bij Overflow 6) Spring over de volgende (conditionele) code heen als in S ofwel IsNul gezet is, ofwel IsNegatief niet gezet is ... De if uit C vertaalt naar ...

Beschrijf je klacht (Optioneel):

captcha