Citat:
Ursprungligen postat av
lillkarsk
Tror jag har sttt p frgan om a^b^c betyder (a^b)^c eller a^(b^c) max 3 gnger under min lnga intensiva karrir och har inte lagt regeln p minnet. Det viktiga r att det finns i programsprkets dokumentation. Annars r det ganska ltt att prova.
Du har rtt att i om (a^b)^c naturligt uppkommer betydligt oftare n a^(b^c) s sparar man 2 bytes i programkoden p att skriva a^b^c istllet fr (a^b)^c om det r den konvention programsprket anvnder. Maskinkoden blir vl likadan oavsett. Men visst om du ska spara programkoden p en magnetremsa frn 1971 s sparar du ett par ren.
Maskinkoden blir lika ja. Fast i ett interpreterande sprk som basic s r det ven en prestandavinst.
Men sen vet jag ju inte om det verkligen fanns en motivering till att associativiteten blev som den blev. Det kan ju vara s enkelt att de behvde vlja och bara tog ngot. Dock vet jag att liknande beslut har tagits historiskt fr att spara minne. Och det har inte frmst med just lagringen p magnetremsa att gra, utan helt enkelt hur mycket koden tar upp i minnet vid kompilering. Den dator som var det frmsta mlet fr sprket C var en PDP-7 som hade ca 9kB minne. Varje byte rknades.
(Som referens kan nmnas att det hr inlgget tar upp 1360 bytes, dvs 15% av minnet i en PDP-7)