scieee Open visual document viewer

Herramienta de enseñanza de aritmética de computadores de nueva generación. Caso de estudio de posit

Godoy Ruiz, David

Abstract

The IEEE Standard for Binary Floating-Point Arithmetic (IEEE 754) has been the standard for computer arithmetic since 1985 and is used in computers worldwide. In 2017 John L. Gustafson presented a new format, posit, with the objective of replacing the floating point, claiming that it offers greater precision or similar precision with fewer bits. Since then many have joined in supporting the format as either a direct alternative to floating point or as a format that can coexist with it. However the learning resources available for learning this new format are few and disperse which makes it so that a new user of the format has to look through many documents, some of them being very technical, in order to gather information about posits. In this Bachelor Thesis an e-learning application was created in order to make learning posit easier. After thoroughly investigating how the format functions and the learning resources available both for posits and floating point a desktop application was developed for Windows that allows the user to learn about the structure of the format and its basic operations. Lastly a evaluation of the features of the application was made in comparison with the rest of the available tools.

Full text

He amien a de enseñanza de a i mé ica de compu ado es de nue a gene ación. Caso de es udio de posi . E-lea ning ool o nex gene a ion compu e a i hme ic. S udy case o posi . T abajo de Fin de G ado Cu so 2022–2023 Au o Da id Godoy Ruiz Di ec o Guille mo Bo ella Juan Raúl Mu illo Mon e o G ado en Desa ollo de Videojuegos Facul ad de In o má ica Uni e sidad Complu ense de Mad id He amien a de enseñanza de a i mé ica de compu ado es de nue a gene ación. Caso de es udio de posi . E-lea ning ool o nex gene a ion compu e a i hme ic. S udy case o posi . T abajo de Fin de G ado en Desa ollo de Videojuegos Au o Da id Godoy Ruiz Di ec o Guille mo Bo ella Juan Raúl Mu illo Mon e o Con oca o ia: Sep iemb e 2023 G ado en Desa ollo de Videojuegos Facul ad de In o má ica Uni e sidad Complu ense de Mad id 15 de sep iemb e de 2023 Dedica o ia A oda mi gen e, es éis donde es éis Ag adecimien os A la peña del Joy e po aguan a me odos es os años. A los del G edos po odo lo pe o má ico. A los de los lagui os po jun a nos en los luga es más a os. A los panas de la uni po hace magia. A los cha ales de LAG y de ASCII po se mucho más que la ida uni e si a ia. A mi amilia. A oda la gen e que me hab é dejado. A la gen e que ha pasado po mi ida y me ha dejado sin que e un pedaci o suyo. A odos oso os, que me habéis hecho como soy. ii Resumen He amien a de enseñanza de a i mé ica de compu- ado es de nue a gene ación. Caso de es udio de po- si . El es ánda IEEE pa a la a i mé ica bina ia de coma lo an e (IEEE 754) lle a siendo la no ma pa a la a i mé ica de compu ado es desde 1985 y es usado en los o denado es de odo el mundo. En 2017 John L. Gus a son p esen ó un nue o o - ma o, los posi , con el obje i o de eemplaza a la coma lo an e, diciendo que o ece mayo p ecisión o p ecisión simila con un meno núme o de bi s. A medida que ha ido a anzando el iempo el o ma o ha ido euniendo cada ez más seguido es que lo apoyan si no como al e na i a di ec a a la coma lo an e como un o ma o que puede coexis i con ella. Sin emba go los ecu sos disponibles pa a ap ende es e nue o o ma o son pocos y es án dispe sos lo que hace que un usua io nue o que quie a ap ende lo enga que busca in o mación epa ida en e a ios documen os, algunos de ellos muy écnicos. En es e T abajo de Fin de G ado se ha c eado una aplicación de e-lea ning pa a acili a el ap endizaje sob e los posi . T as in es iga de alladamen e el unciona- mien o del o ma o y los ecu sos de ap endizaje disponibles ac ualmen e an o pa a coma lo an e como pa a posi se ha desa ollado una aplicación de esc i o io pa a Windows que pe mi e al usua io ap ende la es uc u a del o ma o y sus ope aciones básicas. Pa a conlcui se ha hecho un análisis de las ca ac e ís icas de la aplicación desa ollada en compa ación con el es o de he amien as disponibles. Palab as cla e Sis ema numé ico posi , Coma lo an e, E-lea ning, A i mé ica compu acional, Apli- cación de esc i o io ix 5.5. Posi Tool main window . . . . . . . . . . . . . . . . . . . . . . . . . . 32 5.6. Posi Tool ope a ion window o posi in o ma ion, a one pa ame e ope a ion ................................. 33 5.7. Posi Tool ope a ion window o addi ion/sub ac ion, a wo pa ame- e ope a ion ............................... 34 5.8. Full display o he addi ion ope a ion and he glossa y . . . . . . . . 34 Lis o ables 3.1. Compa ison o ea u es a ailable in e-lea ning applica ions o he loa ing-poin and posi o ma s . . . . . . . . . . . . . . . . . . . . . 18 5.1. Compa ison o Q , wxWidge s and GTK’s ea u es . . . . . . . . . . 28 6.1. Fea u e compa ison o he p oposed applica ion wi h s a e o he a e-lea ning esou ces............................ 37 x ii Chap e 1 In oduc ion 1.1. Mo i a ion The IEEE 754 S anda d o Floa ing-Poin A i hme ic (IEEE 754) (4) has co - e ed he cons an need o compu e s o ep esen eal numbe s wi h a limi ed, ixed amoun o memo y space o decades. Bu e en i i has me apho ically held ha weigh o ha long, when augh his o ma is ba ely skimmed o e in some ed- uca ional ins i u ions, o he poin ha many p og amme s do no e en know he in e nal wo kings o he o ma , jus he ba e minimum: ha i is used o ep esen eal numbe s, and ha i is somewha imp ecise. I a signi ican amoun o p og amme s know he ba e minimum o an inc edibly widesp ead o ma , i is no su p ise ha only people wi h an exp ess in e es in compu e a i hme ics know ha a new o ma was c ea ed, and ha i is aking s eps o knock he loa ing poin o i s high h one: he posi o ma . Posi mode Type III unums (which will be e e ed o as posi s om now on) we e p esen ed as a di ec eplacemen o he cu en o ma (1). Unlike i s wo p edecesso s, posi s we e designed o ha e a simple ha dwa e and so wa e imple- men a ion using he same ype o low-le el ci cui cons uc s ha IEEE 754 loa s use, e en aking less chip a ea. Because o i s ai ly low amoun o ollowe s posi s a e lacking ha dwa e suppo , as i is ai ly ecen and ew people know abou i . Anyone in e es ed in lea ning and/o eaching i will jus ind a lack o educa i e esou ces abou his inc edible new o ma . A e y impo an s ep in o de o s anda dize his inc edible new o ma is c ea ing lea ning esou ces in o de o accele a e he inc ease o i s sp ead. 1 2Chap e 1. In oduc ion 1.2. Objec i es The objec i e o his wo k is o in es iga e he posi o ma and i s inne wo k- ings in o de o de elop an E-Lea ning applica ion o ease he p ocess o ob aining in o ma ion abou hem. In o de o do so he applica ion mus show he use he in e nal pa s o a posi , and explain s ep by s ep he basic ope a ions ha can be ca ied ou wi h hem: con e sion o decimal, addi ion, sub ac ion, mul iplica- ion and di ision. All o his mus be accompanied by g aphics o help isualize he p ocess ha is being ca ied ou . In addi ion, as posi ha e a g ea amoun o e minology ha can be con using, a glossa y will be added in o de o acili a e lea ning. The main goals o his wo k a e: 1. Unde s and posi s and hei inne wo kings in compa ison o loa s. 2. S udy a ailable lea ning esou ces o he one ha is p e ended o de elop, hei ea u es and laws. 3. De elop a desk op applica ion ha explains he posi o ma and i s main ope a ions. 1.3. Wo k plan In o de o achie e he objec i es explained in he ea lie sec ion, he nex plan will be ollowed: 1. S udy posi s and hei inne wo kings in compa ison o loa s. To in es iga e abou posi s and loa s. To de elop a basic in-house implemen a ion o loa s. To look in o so wa e implemen a ions o posi s and hei in e nal wo k- ings. To de elop an implemen a ion o posi ope a ions along wi h s ep by s ep explana ions. 2. S udy a ailable lea ning esou ces o he one ha is p e ended o de elop, hei s uc u e and quali y. To in es iga e simila apps o posi s as well as loa s. To s udy hei unc ions and he esou ces hey o e . 3. De elop a desk op applica ion ha explains he posi o ma and i s main ope a ions. To look o a sui able en i onmen o de elop desk op applica ions. 1.4. Documen s uc u e 3 To de elop he window na iga ion en i onmen o he applica ion. To adap he implemen ed console me hods o wo k in he new en i on- men . To de elop a glossa y o he applica ion. To de elop g aphics ha acili a e ollowing he al eady implemen ed explana ions. 1.4. Documen s uc u e The documen ollows he esea ch and de elopmen p ocesses ha led o he inal applica ion. In Chap e 2 he main cha ac e is ics o he loa ing poin and he posi o ma a e explained as well as some imp o emen s ha posi s make o e loa ing poin numbe s. Nex in Chap e 3 he ea u es o he a ailable e-lea ning esou ces a ailable o posi s a e explained and compa ed wi h some o he ones a ailable o loa ing poin . In Chap e 4 he de elopmen o an own loa ing poin implemen a ion in o de o unde s and he o ma as well as a posi implemen a ion based on he Uni e sal Numbe s Lib a y. Following ha in Chap e 5 he imple- men a ion o he desk op applica ion is explained en i ely. Las ly, in Chap e ?? an e alua ion o he inal esul o he desk op applica ion is shown as well as a com- pa ison wi h he o me s udied applica ions. Finally in Chap e 7 he conclusions and u u e wo k a e discussed. Chap e 2 Floa ing Poin and Posi In his chap e he backg ound o posi s is shown as well as loa s, which we e conside ed necessa y in o de o unde s and hei in ended successo . 2.1. Floa ing Poin : he IEEE 754 S anda d The loa ing-poin o ma is used o ep esen bina y eal numbe s as a s ing o bi s. As shown in Figu e 2.1, loa s a e composed o h ee componen s: a sign bi ha indica es i he numbe is posi i e o nega i e, an exponen ha indica es he posi ion o he adix poin and he ac ion which usually indica es he ac ional pa o he no malized numbe , lea ing he i s 1 implici . This is no always he case as deno malized numbe s exis , which do no ha e an implici 1 and ins ead ha e an implici 0. The IEEE-754 S anda d o Bina y Floa ing-Poin A i hme ic (4) desc ibes a loa ing poin s anda d o compu e ep esen a ion. I was he i s o i s kind and has been used by he majo i y o compu e s since i s c ea ion in 1985 by he Ins i u e o Elec onics and Elec ical Enginee ing, e en hough i has been e ised wice, one in 2008, and ano he one in 2019. This s anda d speci ies o ma s and me hods and i de ines excep ion condi ions and hei s anda d handling in o de o ep esen eal numbe s in a limi ed amoun o bi s. S Exponen E Unsigned signi icand M Figu e 2.1: Floa Fo ma They ha e mul iple special alues: wo ze os (-0, +0) and mul iple NaN (No a Numbe ) alues as well as deno malized numbe s. 5 6Chap e 2. Floa ing Poin and Posi 2.2. Posi The Type III unum, be e known as posi , is an a i hme ic o ma p esen ed by John L. Gus a son and Isaac Yonemo o in 2017 (1). Unlike he Type I and II unums (which we e designed o ep esen ei he a numbe o a speci ic ange in which a numbe is loca ed, wo king simila ly o in e al a i hme ic), he posi o ma was designed o be a di ec eplacemen o he IEEE 754 s anda d in compu e s, by making i s ha dwa e implemen a ion easie han i s o he unum coun e pa s. The posi o ma is shown in Figu e 2.2. Figu e 2.2: Posi o ma (1) I is cons i u ed by 4 di e en bi ields in o de o dec easing signi ican bi s: 1. The sign bi S. I is he same as in signed loa o in ege s: 0 o posi i e numbe s and 1 o nega i e numbe s. I he numbe is nega i e i ’s necessa y o ake he 2’s complemen o he emaining bi s be o e in e p e ing hem. 2. The egime bi ield Rwhich consis s o k(minimum 1) iden ical bi s e mi- na ed by R0nega ed as shown in he Figu e 2.2. R ep esen s −ki R0= 0, o k−1i R0= 1.kis used o calcula e a he scale o useedkwhe e useed is 22es . The egime is a a iable-leng h ield. The longe he egime, he mo e bi s o o he ields a e no ep esen ed and a e conside ed 0 bi s. 3. The exponen bi ield Ehas a maximum leng h o es, dic a ed by he speci ic posi o ma , bu one o mo e bi s can be beyond he leas signi ican bi (LSB) and be conside ed o ha e alue 0. I ep esen s he alue ewhich is ea ed as an unsigned in ege . eis used o calcula e he scaling alue 2e. In he 2022 s anda d es is always 2 (5). 4. The ac ion bi ield Fwhich has a maximum leng h o (n−3−es), bu as wi h he exponen any o hose bi s beyond he LSB a e conside ed 0. The numbe o explici bi s is conside ed m.F ep esen s he ac ion alue . The alue o a posi pis ob ained ollowing he nex p ocess: 1. I all he bi s excep Sa e 0 i is one o wo special alues: I S= 0 hen p= 0 I S= 1 hen p=NaR.NaR(No a Real) is a special posi alue ha is used o ep esen in ini y o in alid alues (such as he esul o 1/0). 2.3. Bea ing Floa ing Poin 7 2. O he wise he alue o p is ob ained om Equa ion 2.1. p= (−1)sign ·(1 + )·useedk·2e(2.1) I ounding is needed, i ollows he nex p ocess: 1. I xis exac ly exp essible in he posi o ma no ounding is needed. 2. I x > maxpos, i ounds o maxpos. 3. I x < minpos, i ounds o minpos. 4. Else ound o nea es e en. Rounding is simple because he e is only one o m o ounding: nea es alue, ies o nea es e en. The way posi s a e designed also cause ha he e is no o e low o unde low, ins ead i a posi we e o unde low/o e low i ounds o he alues minpos/maxpos, which a e he smalles nonze o alue and he g ea es ep esen able alue in he o ma . This makes he handling o o e low o unde low si ua ion easie o manage o p og amme s han he equi alen in IEEE 754. The p oblem wi h posi numbe s is he lack o ha dwa e implemen a ions and he ac ha he u he you go om scale 0 he less p ecision hey ha e. And, because hey a e so new, he e a e ewe esou ces, especially when compa ing o a s anda d ha has been a ound since 1985. 2.3. Bea ing Floa ing Poin The posi o ma has many imp o emen s o e he s anda d loa s (1): 1. I he sign bi is 1, he posi bi s ing is nega ed ( ea ing i as a s anda d 2’s complemen in ege ) be o e decoding he emaining ields. This elimina es he need o “nega i e ze o” and all he complica ions o ha ing wo dis inc bi pa e ns ep esen he same eal alue. 2. A machine ins uc ion ha es s i wo in ege s a e equal will also se e o compa e wo posi s, whe eas loa ins uc ions need an addi ional excep ion es s o nega i e ze o (equal e en hough bi pa e ns a e di e en ) and also a check o NaN alues (no equal, e en when bi pa e ns a e iden ical). 3. The e a e no deno malized numbe s. The implici "hidden bi " be o e he ac ion bi s is always 1. 4. Floa s ha e up o i e di e en ounding modes (nea es - o-e en, di ec ed o 0, ound o ∞, ound o −∞, and nea es -away- om-0), which can be chosen up o he p e e ence o he use as seen in Figu e 2.3. This in u n causes ha di e en de ices can gi e di e en esul s o he same calcula ion. Posi s only 14 Chap e 3. E-Lea ning Resou ces Figu e 3.4: Real wheel o posi <5,1> 3.3.2. RacFP RacFP (21) is a p ojec c ea ed by s uden s o he Uni e sidad Poli écnica de Valencia published in 2006. This desk op applica ion was made wi h a simila philosophy as he one which his applica ion was app oached wi h: acili a ing he lea ning o an a i hme ic o ma . As such, i has been an inspi a ion o his wo k. I was de eloped wi h he pu pose o helping s uden s unde s and loa ing-poin eal numbe s, hei ela ed algo i hms and he implemen a ion o ci cui s based on hese algo i hms. I was designed o be used in unde g adua e-le el cou ses o compu e enginee ing, wi h a pu ely educa ional pu pose. The ool classi ies i s heme in o h ee abs ac ion le els: The i s le el, in e nal ep esen a ion o eal numbe s; he second le el, gene ic algo i hms such as addi ion and mul iplica ion; and he hi d le el, which in oduces he s uden s o eal-wo ld examples ha show how he o ma is applied in ma ke a ailable ci cui s. As seen in Figu e 3.8, RacFP has many in e ac i e bu ons, each ow co espond- ing o one o he a o emen ioned le els. When p essed, a pop-up window appea s depending on he ea u e. The i s le el o e s he op ion o con e sion, which asks o use inpu , and he 3.3. Floa ing Poin Applica ions 15 Figu e 3.5: Floa Toy showing πin mul iple loa o ma s Figu e 3.6: Ha ald Schmid ’s con e e showing he example alue 12.6 o ma s o bo h inpu and ou pu . The inpu (shown in Figu e 3.9) can ei he be in decimal, bina y and hexadecimal. Fo he ou pu , i can be in single p ecision (32-bi loa ), double p ecision (64-bi double) o in a cus om o ma in which he use can speci y he numbe o man issa and exponen bi s. Once en e ed, he window changes o he one shown in Figu e 3.10 o show he bina y ep esen a ion o he numbe sepa a ing he sign, exponen and man issa ields. I also shows he ep esen a ion o he numbe in hexadecimal, and decimal, and he speci ic de ails o he o ma used and he numbe , like i i ’s no malized, deno malized, a ze o, NaN, o an in ini e while gi ing a b ie explana ion o hese de ails. This le el also includes sign ables o e ec i e ope a ion, addi ion/subs ac ion and mul iplica ion/di ision as seen in Figu e 3.11. The second le el consis s o he gene ic algo i hms o a i hme ic ope a ions: addi ion/sub ac ion and mul iplica ion/di ision. Fi s a lowcha (3.12 o he o me and 3.8 o he la e ) appea s wi h all he possible s eps o said ope a ion and a ex box below i ha o e s a b ie explana ion o he cu en s ep and he in e media e esul s. By p essing he nex bu on he use inpu window appea s asking o bo h ope ands, he ounding mode and he speci ic ope a ion (addi ion/- sub ac ion, o mul iplica ion/di ision). I also o e s he o ma op ions p esen in 16 Chap e 3. E-Lea ning Resou ces Figu e 3.7: Explo ing Bina y showing he con e sion o he example alue 27.124 o decimal, no malized bina y scien i ic no a ion and aw bina y he con e sion window. A e en e ing he alues he window closes and he nex bu on now ad ances a s ep a a ime h ough he p ocess highligh ing he cu en s ep, changing he desc ip ion, o bo h depending on wha i s he explana ion a ha momen . An impo an usabili y p oblem wi h his implemen a ion is ha he e is no op- ion o e u n o a p e ious s ep o check he explana ions a e hey a e o e w i en by he nex ones, o cing he use o es a he p ocess in o de o look a hem. The hi d and las le el shows he ha dwa e implemen a ion o he a i hme ic ope a ions explained be o e using lowcha s ha simula e HP chips 3.14. The inpu is simila o he second le el bu he lowcha is e ealed by s ep ins ead o being shown all he ime and he explana ion, his ime in a sepa a e window, can show he in o ma ion o each poin o he diag am i he use ho e s he mouse o e i . All hese explana ions a e also o e ed in bo h Spanish and English. 3.3. Floa ing Poin Applica ions 17 Figu e 3.8: RacFP main sc een Figu e 3.9: Inpu sc een o con e sion The compa ison be ween he ea u es o loa ing-poin esou ces and he posi ones is shown in Table3.1, which shows he sho comings o he la e . The posi ools ha e less op ions o use in e ac ion and p ac ically no ex explana ions o how hey wo k o he heo y behind i . Toge he i all makes ha a new use o he o ma has no o he op ion o he han ead h ough mul iple documen s. Fu he mo e his documen s ha e he basic in o ma ion bu ied be ween complica ed blocks o ex , adding o he con usion. Besides, all he ea u es ha posi has o e loa ing poin such as he ep esen a ion o he posi wheel o he lookup ables a e no needed o he la e because o i s ease o unde s anding in compa ison o he o me . 18 Chap e 3. E-Lea ning Resou ces Figu e 3.10: Con e sion esul Floa ing-poin applica ions ea u es Posi applica ions ea u es Visual Con e sion Tables S ep by s ep explana ion o : Calcula o -Addi ion Visual Rep esen a ion -Sub ac ion -Mul iplica ion -Di ision -Ha dwa e Implemen a ion Table 3.1: Compa ison o ea u es a ailable in e-lea ning applica ions o he loa ing-poin and posi o ma s 3.3. Floa ing Poin Applica ions 19 Figu e 3.11: Sign ables 20 Chap e 3. E-Lea ning Resou ces Figu e 3.12: Addi ion lowcha 3.3. Floa ing Poin Applica ions 21 Figu e 3.13: Mul iplica ion and di ision lowcha 22 Chap e 3. E-Lea ning Resou ces Figu e 3.14: Addi ion ha dwa e lowcha Chap e 4 Console Implemen a ion o Floa and Posi S uc u es Two small console applica ions ha simula ed he in e nal s uc u e and ope a- ions o bo h o ma s. The goal o his was o complemen he heo e ic lea ning o bo h o ma s (especially he in e nal s ep by s ep p ocess o he ope a ions, which is no clea ly included in any documen ) and as a es o ou unde s anding o he p ocess. In o de o do so, an in-house console applica ion ha eplica ed he s uc u e o he o ma s, he con e sion om decimal and a simple ope a ion which was he addi ion. I was de eloped in console in o de o de elop and i e a e as as as possible. C++ was chosen as he language o de elop he applica ion om i s i s i e a- ion. I allows o an easy and as de elopmen p ocess and he e a e many lib a ies a ailable o bo h posi and desk op applica ion de elopmen . 4.1. Unde s anding Floa ia Console Implemen a- ion A console applica ion was de eloped ha simula ed he in e nal wo kings o loa ing poin numbe s, including ex ac ing each bina y ield om a C++ loa and he basic ope a ion o addi ion. The console me hods we e an impo an s ep in o de o unde s and he di e ences be ween loa s and posi s and comple ely unde s and he con e sion and addi ion p ocesses as hey a e simila o posi bu simple and easie o comp ehend. I is no p esen on he inal applica ion as i was a pa o he in es iga ion p ocess and he applica ion is ocused in posi s. 23 30 Chap e 5. Desk op Applica ion Subs eps ins ead ha e a s ing ec o ha is illed line by line wi h he ex expla- na ion o he subs ep o ha s ep o ha ope a ion. 1. Nex S ep: adds a s ep o he ope a ion wi h a gi en i le, which is conside ed he cu en s ep 2. Nex Subs ep: adds a subs ep wi h a gi en i le o he cu en s ep added o he ope a ion 3. Add: adds a ex line o he cu en subs ep added o he cu en s ep o he ope a ion 4. AddHighligh : adds he numbe ha co esponds o a lowcha box o he cu en s ep. 5.4.3. Flowcha s The lowcha s a e c ea ed by he main window on ope a ion s a and show he low o he ope a ion in ques ion as seen in Figu e 5.3. They ecei e he cu en s ep o he explana ion and highligh he ele an s eps. Figu e 5.3: Addi ion lowcha 5.4.4. Glossa y The glossa y is opened wi h a bu on in he bo om igh co ne ha shows a lis o e ms and hei de ini ions as shown in Figu e 5.4. 5.4. The Desk op Applica ion S uc u e 31 The glossa y’s e ms and desc ip ions a e pulled om a .json ile. Figu e 5.4: Glossa y 5.4.5. Applica ion low The applica ion low is seen in Figu e 5.1. When he applica ion s a s he main window (seen in Figu e 5.5 shows he use he op ions o each o he ope a ions. When clicked, he window changes o he ope a ion window widge shown in Figu e 5.6. I shows one ex line o inpu and a go bu on o one-pa ame e ope a ions like he Figu e (con e sion and in o ma ion b eakdown). Fo wo-pa ame e ope a- ions (addi ion and mul iplica ion), a second ex line inpu is shown o he second ope and as well as he op ion o do he opposi e ope a ion (sub ac ion and di ision espec i ely) as can be seen in Figu e 5.7. 32 Chap e 5. Desk op Applica ion Figu e 5.5: Posi Tool main window On clicking he s a bu on a ex box is c ea ed ha shows he i s s ep o he co esponding explana ion, and he nex bu on (on he bo om igh ) adds ano he ex box o he nex s ep’s explana ion. All he ex boxes a e dis ibu ed along a sc oll allowing he use o check all he p e ious s eps. The s a bu on also opens he lowcha , which shows he p ocess o he whole ope a ion and highligh s he la es s ep ha is shown o he use . A any poin du ing o a e he explana ion, he use can change he inpu and p ess he bu on o s a again o go back o he main menu o go o ano he ope a ion. The whole p ocess can be seen in Figu e 5.8 which shows he ex boxes o he addi ion ope a ion o 7 + 15 wi h he lowcha and glossa y. The glossa y is opened wi h a bu on on he op igh o he main window. I opens a sepa a e window illed wi h e ms used in he explana ions and hei de ini ions. 5.4. The Desk op Applica ion S uc u e 33 Figu e 5.6: Posi Tool ope a ion window o posi in o ma ion, a one pa ame e ope a ion 34 Chap e 5. Desk op Applica ion Figu e 5.7: Posi Tool ope a ion window o addi ion/sub ac ion, a wo pa ame e ope a ion Figu e 5.8: Full display o he addi ion ope a ion and he glossa y Chap e 6 E alua ion o he Applica ion In his chap e , an e alua ion o he inal applica ion will be compa ed agains he applica ions p e iously s udied. 6.1. Cha ac e is ics The de eloped applica ion o e s many cha ac e is ics ha we e no p e iously a ailable o lea ning he posi o ma : I o e s s ep-by-s ep explana ions o he main ope a ions o he o ma : con- e sion, addi ion, sub ac ion, mul iplica ion and di ision. This is a g ea help o use s o lea n he in e nal p ocess o posi s wi h p ac ical examples. Among he ope a ions he mos impo an one is he con e sion which is he big di e ence om loa ing poin . I shows how e e y ield o a posi is ex- ac ed om a decimal numbe , how i is ounded and all possible excep ions. The glossa y o e s he use easy access o a lis o common concep s ha may be con using o beginne s. I is a desk op applica ion, which means ha once downloaded i can wo k wi hou he need o access he in e ne . The applica ion is open-sou ce which means ha e e yone can access he sou ce code and make con ibu ions o i . I is a ailable in h ps://gi hub. com/dagodoy/TFG_2023. 6.2. Limi a ions E en hough he applica ion o e s a as a ay o u ili ies o lea ning he o ma i also comes wi h i s own sho comings: 35 36 Chap e 6. E alua ion o he Applica ion The applica ion is missing ea u es al eady a ailable in o he posi applica ions such as posi hub’s lookup ables. The explana ions a e plain ex which can be con using o ge used o. The s uc u e o he applica ion does no allow o colo ed ex o mos kinds o o ma . Requi ing p e ious ins alla ion also means ha i is only compa ible wi h Windows 10 onwa d and is ha de o access han a web applica ion. The applica ion does no allow he use o choose he posi ype eely unlike o he posi esou ces, limi ed only o 8 o 16 bi s and an es o 1 o 2. The applica ion is only a ailable in English. These a e all imp o emen s o add in u u e wo ks. Because he applica ion is open-sou ce anyone who is in e es ed in i can collabo a e in o de o poin ou and imp o e i s limi a ions. 6.3. Use cases A main use o he applica ion is o help people doing indi idual esea ch o he o ma . I someone on he in e ne is in e es ed in posi s hey now ha e access o all he ea u es a ailable in o de o lea n he basics o he o ma : i s s uc u e and how con e sion, addi ion, sub ac ion, mul iplica ion and di ision a e ca ied ou . Ano he main use is as a complemen o compu e science cou ses, specially in uni e si ies. I is impo an ha uni e si y cou ses on compu e science inco po- a e posi s (27) ei he ocusing on i s s uc u e on he compu e a i hme ics side, i s possible ha dwa e implemen a ion o i s uses in neu al ne wo k aining. The applica ion would be a use ul ool o help s uden s in unde s anding he o ma and, in ime, help inco po a e i in a in oduc o y le el along loa ing poin . 6.4. Compa ison wi h p e ious ools As RacFP was he bigges e e ence in he de elopmen o his applica ion, i is impo an o compa e he end esul wi h i . A ea u e compa ison is made in Figu e 6.1 whe e i shows ha i has some addi ional impo an ea u es such as he glossa y and a s ep-by-s ep explana ion o con e sion (while hey may be conside ed unnecessa y o loa s as he p ocess and e minology a e much simple ). The sign ables a e no p esen in he applica ion because hey we e no conside ed as ele an as he au ho s o RacFP. Some usabili y imp o emen s we e made aking in o accoun RacFP’s ew sho - comings in ha ega d. The mos no able one is ha i allows he use o see he whole explana ion o he ope a ions a all imes unlike RacFP’s explana ions and so 6.5. E alua ion wi h use s 37 allows o check p e ious s eps, unlike RacFP. I also allows o manipula e all open windows wi hou needing o close hei seconda y windows. Fea u es P oposed RacFP Posi calcula o Posi lookup ables Well ounded Floa con e e s Explana ions o : -Addi ion ✓ ✓ ✗ ✗ ✗ ✗ -Sub ac ion ✓ ✓ ✗ ✗ ✗ ✗ -Mul iplica ion ✓ ✓ ✗ ✗ ✗ ✗ -Di ision ✓ ✓ ✗ ✗ ✗ ✗ -Con e sion ✓ ✗ ✗ ✗ ✗ ✓ -Ha dwa e implemen a ion ✗ ✓ ✗ ✗ ✗ ✗ -S uc u e o he o ma ✓ ✓ ✗ ✗ ✗ ✗ Glossa y ✓ ✗ ✗ ✗ ✗ ✗ Sign ables ✗ ✓ ✗ ✗ ✗ ✗ Mul iple o ma p ecision compa ison ✗ ✗ ✓ ✗ ✗ ✗ Lookup ables ✗ ✗ ✗ ✓ ✗ ✗ Visual ep esen a ion ✗ ✗ ✗ ✗ ✓ ✗ Mul iple languages ✗ ✓ ✗ ✗ ✗ ✗ Table 6.1: Fea u e compa ison o he p oposed applica ion wi h s a e o he a e-lea ning esou ces 6.5. E alua ion wi h use s In o de o imp o e he quali y o he applica ion i would be ideal o pe o m a e alua ion o he applica ion wi h use s in o de o ecei e di ec eedback. In his sec ion an usabili y e alua ion o he applica ion is p esen ed as a u u e wo k possibili y. 6.5.1. In es iga ion objec i es and ques ions As he e alua ion o he whole applica ion would esul ei he in e y long e alu- a ion sessions o sho e ones wi h lowe quali y o he answe s he e alua ion would ha e o be sepa a ed in mul iple es s o sessions. The goal o a i s e alua ion is o know he ollowing poin s o he applica ion: 1. Ease o unde s anding o he bina y posi s uc u e. 2. Ease o use o he applica ion i sel . In o de o e alua e hose goals he ollowing in es iga ion ques ions a e se : 1. Is he use capable o con e a decimal numbe o posi a e a session o use? 2. Is he use capable o con e a posi bina y numbe o decimal a e a session o use? 3. Does he use ge s uck in a speci ic pa o he applica ion? 4. Does he use open he glossa y? 5. Does he use manage o go h ough he explana ion o he con e sion? 38 Chap e 6. E alua ion o he Applica ion 6.5.2. En i onmen and du a ion o he es The es e p o ile o he applica ion could be Compu e Science s uden s ha ha e ecen ly lea n abou loa ing poin and wi hou any p e ious knowledge abou posi s. The es e s would ha e 20 minu es wi h he applica ion ollowed wi h 5 minu e ques ionnai e and a 5 minu e in e iew a e . The en i onmen could be a compu e oom in a uni e si y o school o i could be made emo ely ( h ough mee , disco d, e c.) 6.5.3. Desc ip ion o he es e ’s asks The es e s ha e o open he applica ion and expe imen wi h he con e sion and he in o ma ion op ions o he applica ion wi hou any help om he in es iga o s. 6.5.4. Ini ial ins uc ions The in es iga o s should welcome he es e s and ell hem he p ocedu e o he es : hey would ha e 20 minu es o expe imen wi h he applica ion and unde s and he posi o ma and hen answe a sho ques ionnai e and a sho in e iew. The in es iga o has o ell he es e ha hei sc een would be eco ded as well as he audio o he in e iew. 6.5.5. Beha io o he in es iga o Passi e obse a ion o he use . The in es iga o mus no in e ene in any way. Be o e s a ing hey would emind he use ha he objec i e o he e alua ion is o es he applica ion, no hei capaci ies. E e y in es iga o would be wa ching a single use and would be aking no es on he obse a ion poin s. 6.5.6. E alua ion design Obse a ion: he session would be eco ded o pos e io analysis. The poin s o obse e a e i he use opens he glossa y and i hey go h ough he con- e sion explana ion a leas once. Ques ionnai e: he ques ionnai e would ha e ou exe cises o con e sion ha he playe has o sol e in he gi en ime. The exe cises would be comp ised o wo con e sions om decimal o posi and wo ice e sa. Each one would ha e an easie and a ha de exe cise. In e iew: he in e iew would be mainly abou he answe ing he in es iga- ion ques ion "Does he use ge s uck in a speci ic pa o he applica ion?". 6.5. E alua ion wi h use s 39 I would as well include a ques ion asking abou gene al eedback om he es e abou he applica ion in gene al. Ano he possible e alua ion would be wi h uni e si y p o esso s ha could b ing in eedback o i s educa i e alues om he poin o iew o a eache and e alua e whe e i could be inco po a ed in uni e si y lessons.