李長(zhǎng)久
摘 要:簡(jiǎn)要介紹了Android平臺(tái)的設(shè)計(jì)和基于IEEE754標(biāo)準(zhǔn)的浮點(diǎn)數(shù)運(yùn)算應(yīng)用的實(shí)現(xiàn)。在不同的計(jì)算環(huán)境中,浮點(diǎn)數(shù)的表示和運(yùn)算都有其對(duì)應(yīng)的標(biāo)準(zhǔn)、運(yùn)算執(zhí)行步驟和相關(guān)使用算法。對(duì)于浮點(diǎn)數(shù)的表示和相關(guān)運(yùn)算,IEEE754標(biāo)準(zhǔn)是計(jì)算機(jī)業(yè)界公認(rèn)的標(biāo)準(zhǔn),而浮點(diǎn)數(shù)運(yùn)算在計(jì)算環(huán)境中的執(zhí)行原理和相關(guān)算法是計(jì)算機(jī)組成原理課程的重要組成部分。通過(guò)解讀IEEE754標(biāo)準(zhǔn),學(xué)習(xí)、掌握浮點(diǎn)數(shù)在計(jì)算環(huán)境中的執(zhí)行原理和相關(guān)機(jī)器碼運(yùn)算算法,可為課題所要設(shè)計(jì)和實(shí)現(xiàn)的浮點(diǎn)數(shù)運(yùn)算應(yīng)用提供有利的理論依據(jù)。
關(guān)鍵詞:浮點(diǎn)數(shù)運(yùn)算;IEEE754標(biāo)準(zhǔn);Android;應(yīng)用程序
中圖分類號(hào):TP391.41 文獻(xiàn)標(biāo)識(shí)碼:A DOI:10.15913/j.cnki.kjycx.2015.19.046
浮點(diǎn)數(shù)運(yùn)算教學(xué)是在計(jì)算機(jī)組成原理課程中進(jìn)行的,主要學(xué)習(xí)的是計(jì)算機(jī)組成原理和公認(rèn)的關(guān)于浮點(diǎn)算術(shù)表示的標(biāo)準(zhǔn)。目前,還沒(méi)有真正應(yīng)用于浮點(diǎn)數(shù)運(yùn)算教學(xué),并且利用寬帶無(wú)線移動(dòng)通信技術(shù)的便利,在移動(dòng)終端上開發(fā)的浮點(diǎn)數(shù)運(yùn)算的應(yīng)用。因此,如果能在移動(dòng)終端中開發(fā)一款計(jì)算機(jī)原理浮點(diǎn)數(shù)運(yùn)算輔助程序,那么,就能夠?yàn)楦↑c(diǎn)數(shù)運(yùn)算的教學(xué)提供必要的幫助。
1 引用關(guān)鍵技術(shù)
Android系統(tǒng)是以Linux為基礎(chǔ)的操作系統(tǒng),原來(lái)僅用于移動(dòng)通訊設(shè)備上。2007年,Google與硬件制造商、軟件開發(fā)商和電信運(yùn)營(yíng)商組成了手持設(shè)備聯(lián)盟,共同開發(fā)了Android系統(tǒng),使其成功介入并迅速占領(lǐng)了智能型手機(jī)市場(chǎng)。
計(jì)算機(jī)底層是以二進(jìn)制0,1來(lái)存儲(chǔ)和表示數(shù)據(jù)信息的。其中,浮點(diǎn)數(shù)的運(yùn)算也是如此。浮點(diǎn)數(shù)以一般的格式和IEEE754標(biāo)準(zhǔn)2種格式存在,用來(lái)表示小數(shù)點(diǎn)位置可浮動(dòng)的數(shù)據(jù),定點(diǎn)數(shù)則以固定的某個(gè)位置存在,一般分為整數(shù)部分和小數(shù)部分。
2 應(yīng)用設(shè)計(jì)
Android平臺(tái)浮點(diǎn)數(shù)運(yùn)算應(yīng)用系統(tǒng)是計(jì)算機(jī)組成原理教程的輔助程序。該應(yīng)用程序主要幫助用戶教學(xué)、學(xué)習(xí)、理解基于IEEE754標(biāo)準(zhǔn)的浮點(diǎn)數(shù)值在計(jì)算環(huán)境中的表示(僅實(shí)現(xiàn)單精度和雙精度2種浮點(diǎn)數(shù)表示格式),并進(jìn)行加減乘除法運(yùn)算的執(zhí)行過(guò)程。因此,該應(yīng)用程序的主要功能是實(shí)現(xiàn)浮點(diǎn)數(shù)、基于IEEE754標(biāo)準(zhǔn)規(guī)定的2種基本格式,在計(jì)算環(huán)境中表示,并顯示加法、減法、乘法和除法的操作執(zhí)行全過(guò)程。
2.1 二進(jìn)制數(shù)值顯示
用戶在輸入十進(jìn)制操作數(shù)值后,系統(tǒng)將十進(jìn)制操作數(shù)值轉(zhuǎn)化為已選擇的IEEE754標(biāo)準(zhǔn)規(guī)定的二進(jìn)制浮點(diǎn)數(shù)格式的二進(jìn)制數(shù)值,并將該二進(jìn)制數(shù)值輸出顯示。
2.2 加減乘除的操作
這4種運(yùn)算實(shí)現(xiàn)了用戶輸入操作數(shù)值。在選擇相應(yīng)的運(yùn)算操作后,將該運(yùn)算操作在計(jì)算環(huán)境中執(zhí)行的過(guò)程輸出顯示給用戶。
2.3 格式選擇
該功能所能選擇的格式僅包含IEEE754標(biāo)準(zhǔn)所規(guī)定的浮點(diǎn)數(shù)格式中的2種基本二進(jìn)制格式,即單精度型格式和雙精度型格式。
2.4 幫助
這個(gè)功能提供該應(yīng)用程序的相關(guān)操作說(shuō)明和IEEE754標(biāo)準(zhǔn)的相關(guān)信息。
2.5 打電話、發(fā)送郵件和打開網(wǎng)頁(yè)
在此應(yīng)用程序中,用戶可以單擊電話號(hào)碼實(shí)現(xiàn)通話,也可以選擇郵箱發(fā)送郵件,單擊相關(guān)網(wǎng)址瀏覽網(wǎng)頁(yè)。
3 功能實(shí)現(xiàn)
3.1 正則表示篩選十進(jìn)制浮點(diǎn)數(shù)值的輸入
用戶需要輸入2個(gè)十進(jìn)制浮點(diǎn)數(shù)來(lái)進(jìn)行其他運(yùn)算。在輸入浮點(diǎn)數(shù)的過(guò)程中,使用了正則表達(dá)式篩選輸入值是否符合浮點(diǎn)數(shù)的形式。
3.2 改寫源碼實(shí)現(xiàn)列表功能
在此,需要使用列表控件展示開發(fā)者和指導(dǎo)教師的相關(guān)信息。其實(shí),有一些信息提供的是一個(gè)網(wǎng)址的鏈接或是電話的撥號(hào)連接,因此,列表的每一行中不是只有一個(gè)文本控件,而是多個(gè)。Android提供的用于提供數(shù)據(jù)綁定列表的適配器只處理每一行只有一個(gè)文本控件的情況,所以,需要修改源碼來(lái)實(shí)現(xiàn)所需功能。
3.3 更換應(yīng)用背景
在Float Point Activity表示的界面上,用戶可以左、右快速滑動(dòng)屏幕更換界面背景,并且圖片以循環(huán)的方式存儲(chǔ)。
3.4 運(yùn)算操作功能的實(shí)現(xiàn)
在Float Point Activity類中獲取2個(gè)操作數(shù)后,根據(jù)用戶選擇的操作按鈕在其按鈕監(jiān)聽中調(diào)用相關(guān)的操作類執(zhí)行操作。每一種浮點(diǎn)數(shù)運(yùn)算操作都要按照浮點(diǎn)數(shù)在計(jì)算環(huán)境中的執(zhí)行原理和相關(guān)使用算法執(zhí)行。
3.5 其他功能
在該應(yīng)用中,還涉及到了打開網(wǎng)址、打電話等功能。
4 應(yīng)用友好性
應(yīng)用的友好性主要體現(xiàn)在用戶可使用的操作是否簡(jiǎn)單、便捷,程序的響應(yīng)是否及時(shí)有效,錯(cuò)誤操作是否得到有效的糾正,應(yīng)用展現(xiàn)給用戶的視覺(jué)效果是否良好等方面。在開發(fā)該應(yīng)用的過(guò)程中,要考慮以下幾方面的因素:①在執(zhí)行加減乘除法運(yùn)算時(shí),要多次修改表示二進(jìn)制浮點(diǎn)數(shù)的字符串。因此,對(duì)于可能進(jìn)行多次修改操作的字符串,在編碼時(shí),用StringBuffer類型記錄,而非String類型。②對(duì)于用戶可執(zhí)行的操作,它們是要在有限步之內(nèi)完成的。如果用戶只需要單擊“關(guān)于”菜單,就可以查看該應(yīng)用開發(fā)作者的基本信息。此時(shí),單擊相應(yīng)的聯(lián)系方式就可以發(fā)送郵件。如果用戶要執(zhí)行浮點(diǎn)數(shù)運(yùn)算,那么,只需輸入操作數(shù),程序就會(huì)實(shí)現(xiàn)進(jìn)制的轉(zhuǎn)換,用戶就可以實(shí)時(shí)查看其輸入的操作數(shù)轉(zhuǎn)換二進(jìn)制的結(jié)果,而不需要用戶再選擇完成相應(yīng)的進(jìn)制轉(zhuǎn)換等。③在開發(fā)用戶可以看到的界面時(shí),要盡量使其美觀、簡(jiǎn)潔,去掉或隱藏界面上多余的信息。④提示。用戶在進(jìn)行錯(cuò)誤的操作時(shí),應(yīng)用都會(huì)給予相關(guān)的友好提示。
5 結(jié)束語(yǔ)
計(jì)算機(jī)組成原理浮點(diǎn)數(shù)運(yùn)算是計(jì)算環(huán)境中數(shù)據(jù)表示和進(jìn)行運(yùn)算的重要組成部分。借助移動(dòng)互聯(lián)網(wǎng)的優(yōu)勢(shì)在移動(dòng)終端上開發(fā)出相應(yīng)的輔助教學(xué)程序,這對(duì)計(jì)算機(jī)組成原理浮點(diǎn)數(shù)運(yùn)算的教學(xué)有很大的幫助?;诖耍疚闹饕U述了開發(fā)基于Android平臺(tái)計(jì)算機(jī)組成原理浮點(diǎn)數(shù)運(yùn)算輔助程序應(yīng)該學(xué)習(xí)、了解、掌握的相關(guān)知識(shí),同時(shí),還指出了該應(yīng)用系統(tǒng)的主要功能、系統(tǒng)設(shè)計(jì)和系統(tǒng)設(shè)計(jì)優(yōu)化,大體介紹了應(yīng)用實(shí)現(xiàn)和用戶體驗(yàn)等相關(guān)內(nèi)容。
參考文獻(xiàn)
[1]王愛(ài)英.計(jì)算機(jī)組成與結(jié)構(gòu)[M].第4版.北京:清華大學(xué)出版社,2007.
〔編輯:白潔〕
Application of Floating Point Operation in Android Platform
Li Changjiu
Abstract: This paper briefly introduces the design of the Android platform and the implementation of floating point number operation based on IEEE754 standard. In different computing environments, the representation and operation of float point have their corresponding standard, operation steps and related algorithms. The IEEE754 standard is a recognized standard for the computer industry, and the implementation principle and correlation algorithm of the float point operation in the computing environment is an important part of the computer. By reading the IEEE754 standard, learning and mastering the implementation principle of the floating point number in the computing environment and the related machine code operation algorithm can provide a favorable theoretical basis for the design and Realization of the floating point number operation.
Key words: floating point operation; IEEE754; Android; application
文章編號(hào):2095-6835(2015)19-0047-02