Computerarithmetiek

Leer met meerkeuzevragen over vaste komma, IEEE 754-drijvende komma (normalisatie, denormale getallen, afronding, speciale waarden), afrondingsfouten en cancellation, bfloat16 en INT8, vermenigvuldigers en carry-lookahead-opteller.

Oefen 10 vragenWillekeurige vragen uit dit onderwerp · ongeveer 5 minuten Dit onderwerp oefenenAlle vragen over dit onderwerp in willekeurige volgorde Zwakke vragenAlleen de laatst fout beantwoorde vragen opnieuw oefenen

Computerarithmetiek: kernpunten

Computers stellen getallen voor met een eindig aantal bits, dus het bereik en de nauwkeurigheid zijn beperkt. In tegenstelling tot vaste komma, waarbij de positie van de komma vastligt, splitst IEEE 754-drijvende komma een getal in teken, exponent en mantisse, zodat zowel zeer kleine als zeer grote getallen kunnen worden weergegeven. Het is belangrijk normalisatie, denormale getallen, afrondingsmodi en de omgang met speciale waarden zoals oneindig en NaN te kennen.

Bij rekenen met drijvende komma ontstaan afrondingsfouten, en bij het aftrekken van bijna gelijke getallen neemt het aantal significante cijfers af (cancellation). In AI worden korte formaten zoals bfloat16, FP16, FP8 en INT8 gebruikt. Naast de weergave van getallen leert u ook hoe schakelingen voor rekenkunde in hardware zijn opgebouwd, zoals vermenigvuldigers, delers en carry-lookahead-optellers.

Alle vragen over Computerarithmetiek (50)

  1. Bij een niet-ondertekend vastekommagetal van 8 bit waarvan de onderste 4 bits het fractionele deel vormen, welke waarde stelt het bitpatroon 0011 1000 voor?
  2. Welke combinatie van drie onderdelen vormt een IEEE 754-drijvendekommagetal?
  3. Welke combinatie van aantallen bits voor teken, exponent en mantisse geldt voor een IEEE 754-getal met enkele precisie (32 bit)?
  4. Welke combinatie van aantallen exponent- en mantissebits is juist voor een IEEE 754-getal met dubbele precisie (64 bit)?
  5. Wat is de werkelijke exponent (de macht van 2) wanneer in een IEEE 754-getal met enkele precisie de opgeslagen exponentwaarde 130 is?
  6. Wat is het juiste effect van het niet opslaan van de voorste 1 van de mantisse (verborgen bit) bij genormaliseerde IEEE 754-getallen?
  7. Welk hexadecimaal getal is het bitpatroon van het decimale getal 1,0 in IEEE 754 met enkele precisie?
  8. Welk hexadecimaal getal is het bitpatroon (teken, exponent, mantisse) bij omzetting van −6,25 naar enkele precisie?
  9. Welke uitspraak is juist over het decimale getal 0,1 weergegeven als binair drijvendekommagetal?
  10. In veel programmeertalen is de vergelijking 0.1 + 0.2 == 0.3 bij dubbele precisie onwaar. Wat is hiervoor de juiste reden?
  11. Wat is de machine-epsilon (het verschil tussen 1 en het eerstvolgende weer te geven getal groter dan 1) bij IEEE 754 met enkele precisie?
  12. Welke combinatie geeft het aantal betrouwbare decimale significante cijfers van drijvendekommagetallen met enkele en dubbele precisie juist weer?
  13. Wat is de juiste rol van gedenormaliseerde getallen (subnormale getallen) in IEEE 754?
  14. Bij berekeningen met veel gedenormaliseerde getallen kan de verwerking op sommige processors sterk vertragen. Welke instelling wordt daarom gebruikt wanneer prestaties voorrang hebben?
  15. Wat is het resultaat dat de norm voorschrijft wanneer bij drijvendekommabewerkingen volgens IEEE 754 een positief getal door 0 wordt gedeeld?
  16. Wat is in veel programmeertalen het resultaat van de evaluatie van x == x wanneer x NaN is?
  17. Welke uitspraak is juist over het bitpatroon bij enkele precisie in IEEE 754 waarvan het exponentveld uit alleen enen (255) bestaat?
  18. Welke uitspraak over +0 en −0 in IEEE 754-drijvendekommagetallen is juist?
  19. Welke afrondmethode schrijft IEEE 754 standaard voor?
  20. Wat worden 2,5 en 3,5 bij het afronden naar een geheel getal met round to nearest, ties to even?
  21. Hoe heet het verschijnsel waarbij bij het aftrekken van twee bijna gelijke drijvendekommagetallen de significante cijfers sterk afnemen?
  22. Als x zeer groot is, treedt bij de berekening van √(x + 1) − √x in drijvende komma cancellation op. Welke herschrijving levert het resultaat nauwkeurig op?
  23. Bij een drijvendekommagetal met enkele precisie verandert het resultaat niet van 100 miljoen (10⁸) wanneer er 1 bij wordt opgeteld. Welke verklaring van dit verschijnsel is juist?
  24. Wat is het doel van de Kahan-sommatie (opteller met correctie) die wordt gebruikt bij het optellen van veel drijvendekommagetallen?
  25. Wat is het juiste voordeel van de FMA-instructie (fused multiply-add) bij de berekening van a × b + c?
  26. Wat is de belangrijkste reden dat bfloat16 wordt gebruikt bij het trainen van AI?
  27. Wat is een probleem bij het trainen van een neuraal netwerk met FP16 (halve precisie: 1 teken, 5 exponent, 10 mantissebits) dat wordt aangepakt door de verliesfunctie een aantal keer te vergroten voor de berekening (loss scaling)?
  28. Wat is de grootste eindige waarde die FP16 (1 teken, 5 exponentbits (bias 15), 10 mantissebits) kan weergeven?
  29. Hoe worden de twee FP8-formaten E4M3 (exponent 4, mantisse 3 bit) en E5M2 (exponent 5, mantisse 2 bit) gewoonlijk onderscheiden in gebruik?
  30. Wat is het belangrijkste voordeel van het omzetten (kwantiseren) van gewichten van FP32 naar INT8 bij AI-inferentie?
  31. Gegevens met een waardebereik van −6,35 tot 6,35 worden gekwantiseerd naar symmetrisch INT8 (−127 tot 127) rond 0. Met de schaal gelijk aan "grootste absolute waarde ÷ 127", door welk geheel getal wordt 1,0 weergegeven?
  32. Wat is de belangrijkste reden dat in kleine microcontrollers en DSP's vaak vastekommabewerkingen in plaats van drijvendekommabewerkingen worden gebruikt?
  33. Welke combinatie van stapgrootte (resolutie) en bereik is juist voor het 16-bits ondertekende vastekommaformaat Q15 (15 fractiebits)?
  34. Hoe moet het resultaat worden behandeld wanneer twee vastekommagetallen met 8 fractiebits met een vermenigvuldiger voor gehele getallen worden vermenigvuldigd?
  35. Welke uitspraak over verzadigingsrekenkunde (saturating arithmetic), zoals gebruikt in signaalverwerking, is juist?
  36. Welke combinatie van de definities van het generatiesignaal g en het propagatiesignaal p per bitpositie (a en b zijn de ingangen van die positie) en de formule voor de overdracht c(i+1) naar het hogere bit, zoals gebruikt in een carry-lookahead-opteller, is juist?
  37. Wat is de belangrijkste reden dat een carry-save-opteller wordt gebruikt om veel partiële producten in een vermenigvuldiger op te tellen?
  38. Welke uitspraak over de Wallace-boom, die in snelle vermenigvuldigers wordt gebruikt, is juist?
  39. Wat is het belangrijkste effect van het gebruik van het Booth-algoritme van radix 4 (Booth-codering) in een vermenigvuldiger?
  40. Hoeveel bits zijn nodig om het product van twee niet-ondertekende 8-bitsgetallen zonder overflow weer te geven?
  41. Welke uitdrukking vermenigvuldigt een geheel getal x met 10 met verschuivingen en optellingen, zonder een vermenigvuldigingsinstructie?
  42. Wat is de juiste reden dat gewone gehele-getaldelers (die het quotiënt bit voor bit bepalen, zoals restoring en non-restoring) doorgaans trager zijn dan vermenigvuldigers?
  43. Wat is het resultaat wanneer bij een 8-bits ondertekend geheel getal −8 (1111 1000) met een rekenkundige verschuiving 1 bit naar rechts wordt geschoven?
  44. Welke combinatie van de resultaten van −7 / 2 en −7 >> 1 (bij rekenkundige verschuiving naar rechts) voor het type int in C is juist?
  45. Wat is in C het resultaat van het aftrekken van 1 van 0 bij een niet-ondertekend 32-bits geheel getal (unsigned int)?
  46. Hoe wordt bij de optelling van niet-ondertekende gehele getallen vastgesteld dat het resultaat buiten het weer te geven bereik valt (overflow)?
  47. Welke uitspraak over de afstand tussen naburige weer te geven waarden van drijvendekommagetallen is juist?
  48. Wat is de bovengrens, beginnend bij 0, tot waar alle gehele getallen exact kunnen worden weergegeven in een IEEE 754-drijvendekommagetal met enkele precisie?
  49. Wat is de belangrijkste reden dat bedragen vaak worden verwerkt als gehele getallen met de kleinste eenheid (1 yen of 1 cent) als 1, in plaats van als binaire drijvendekommagetallen?
  50. Wat is de belangrijkste reden dat bij AI-training met gemengde precisie het grootste deel van de berekeningen in FP16 of bfloat16 gebeurt, terwijl de oorspronkelijke waarde van de gewichten (master weights) in FP32 wordt bewaard?

Andere onderwerpen in Computersystemen