999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

無序事物有序化思想在計算機程序設計中的應用

2018-05-09 01:30:10李曉宇秦文杰
科學與財富 2018年8期

李曉宇 秦文杰

摘 要:闡述了無序事物有序化思想與計算機程序設計之間的聯系,介紹了無序事物有序化思想在計算機設計中的相關案例,對比了計算機程序設計中是否應用無序事物有序化思想的優勢與不足,分析了無序事物有序化思想對計算機程序設計的意義和應用價值。觀察分析無序的事物,從中尋找共同點、規律,以達到有序地解決問題,便于修改或復用設計。

關鍵詞:無序事物有序化,計算機程序設計,循環,復用

1 引言 無序事物有序化思想,顧名思義,就是通過一定量的觀察分析問題,從大量的經驗中抽象總結出某些潛在規律,做到有序地解決事務。計算機程序設計包含順序、分支、循環三種思想結構。有效地使用循環可以減少大量無用的工作,而且可以使他人更加容易地理解自己的思路想法,甚至是源代碼。還便于修改邏輯設計,做到復用移植。

2 無序事物有序化思想與計算機程序設計的聯系

計算機程序設計順序結構,一個一個地解決問題,就亂序地處理事物。沒有能充分利用循環結構的簡潔。循環結構,代碼量短小,不那么容易使人煩躁、令人心生畏懼。如何使無序事物有序化,就需要分析事物問題,找出共同點。而如何找到,就要靠設計人員的經驗和思維抽象高度了。

3 相關應用案例

案例1 數組列表實現無序事物有序化

《32匯編語言程序設計》3習題8-14,利用CMOS RAM的系統時間,將年月日時分秒星期等時間完成的顯示出來。

解釋:CMOS RAM有64個字節容量,以8位I/O接口形式與處理器連接,通過兩個I/O地址訪問。要訪問CMOS RAM的內容,需要首先向I/O地址70H輸出要訪問的存儲單元編號,然后用I/O地址71H讀寫該單元的一個字節數據。

由上表可知,待求的年月日時分秒星期信息分別存放在CMOS RAM的9,8,7,4,2,0,6號單元。

若順序地依次輸出年月日時分秒星期信息,需要把讀取CMOS信息的語句寫7遍,代碼立刻顯得冗余,且若要修改年月日等信息的順序,需要讀取分析整個代碼清單的好幾處,不容易查找待修改的地方。

但若加以分析,讀取何種時間信息,都要訪問CMOS,只是提前告知CMOS要訪問的單元號不同。

把這些無序的單元號寫到一個連續的存儲空間中(cell byte 9, 8, 7, 4, 2, 0, 6; MASM匯編語言定義字節數組的語句),順序訪問這些數據,執行相同的代碼段,根據提供的單元號不同,獲得相應的信息。這就可以寫成一個循環體了。如果改變時間年月日十分秒星期顯示順序,只需要修改cell byte ... 字節數組就可以了。

源代碼請訪問:代碼托管平臺5

案例2 映射實現無序事物的有序化

題目描述讀入兩個小于100的正整數A和B,計算A+B。 需要注意的是:A和B的每一位數字由對應的英文單詞給出。[6]

這道考研機試題,就是一個典型的把無序的英文單詞,映射為機器可以直接進行數學計算的數字。需要用到映射。one -> 1 , two -> 2, three -> 3, four-> 4... 這里用一個紅黑樹實現的映射容器map。

map[“one”] = 1, map[“two”] = 2, map [“three”] = 3, map[“four”] = 4...

遇到一個英文單詞就轉換成數字。one, two, three, four,... 就變成了1, 2, 3, 4.

案例 3

加密解密中的應用

在簡單的加密算法字符替換中,把某個字符替換成另一個字符,而不是簡單地將所有字符后移幾位(例如 a->d, b->e, c->f 后移3位)。替換并無規律可尋,秘鑰字符串key可能是個一個隨機生成的字符串,例如秘鑰key = “jdekalgoba3fdlh4cijm3ip1uo”只要26個不同的字符就可以了。這個秘鑰對應的字符依次對應a b c d...

對于轉換成的密文,如何根據這個秘鑰串key還原得到原文呢?這就需要無序化為有序的思想了。根據秘鑰key,給數組array賦值。array[‘j] = a, array[‘d] = b, array[‘e] = c... 利用這個數組array就可以把密文還原為明文了。

4 是否應用無序事物有序化思想到計算機程序設計中的優勢與不足

由上面案例可以看到,

無序事物有序化可以使最終的解決方案更簡潔;

有利于后來的變動修改;

抽象度更高,需要一定的經驗和代碼實踐基礎,不容易想到。

有序到無序可以用于混淆事物,做到加密報文。然后再無序到有序還原報文。

不使用無序到有序的思想,在起初設計編碼時可能是簡單。不用多動腦筋思考。可是,一旦程序出現問題,再修改維護時,很可能要同時修改幾個地方,易疏忽。

給別人閱讀理解代碼帶來麻煩。

過分的考慮分析無序事物中的規律,可能是徒勞的。

5 無序事物有序化思想對計算機程序設計的意義和應用價值

大量實踐證明,維護軟件需要大量的財力物力,甚至是開發軟件的N多倍。無序事物有序化可以提高設計的抽象高度,便于處理后來可能存在的維護問題,減少花費。

該思想可以提高設計人員的思考能力(抽象思維得到提高),開發人員的代碼能力(需要縝密的編寫)。提高軟件生產質量。

結束語

無序事物有序化思想應用在計算機程序設計中,可以抽象設計,使編碼量更少。無序事物有序化可以用于批量處理一些問題,效率更高。這是計算機程序設計中的一個小思想,可能只是用在一個較大設計中的一小部分,也不可丟棄。積少成多,計算機程序設計中有很多技巧,需要開發人員等在生產實踐中取總結,分享。

2018年3月6日

于鄭州大學

注解

[1] 李曉宇:指導老師,鄭州大學信息工程學院的老師

[2] 秦文杰:鄭州大學信息工程學院軟件工程系2015級學生,學號20152480225

[3] 《32位匯編語言程序設計》:鄭州大學錢曉捷教授編著的匯編語言學習教科書

[4]CMOSRAM實時時鐘信息:本圖片源自網絡,若有侵權,請告知

[5] 源代碼鏈接 https://github.com/zzuwenjie/coding18/blob/master/MASM/8_14.asm

[6] 題目摘自浙江大學2005年考研機試題

主站蜘蛛池模板: 亚洲天堂在线视频| 欧美性精品| 91久久偷偷做嫩草影院精品| 青青青草国产| 亚洲国产一成久久精品国产成人综合| 国产欧美日韩视频怡春院| 日韩在线欧美在线| 久久久受www免费人成| 特级做a爰片毛片免费69| 国产xx在线观看| 久久国产乱子| 小说区 亚洲 自拍 另类| 国产成人啪视频一区二区三区| 亚洲精品动漫在线观看| 日韩av无码精品专区| 国产成人精品视频一区视频二区| 国产激情影院| 亚洲精品午夜天堂网页| 国产麻豆精品在线观看| 伊人国产无码高清视频| 黄色网页在线观看| 欧美亚洲国产视频| 国产 在线视频无码| 欧美成人国产| 亚洲av综合网| 亚洲国产精品VA在线看黑人| 黄网站欧美内射| 中文毛片无遮挡播放免费| 亚洲国产av无码综合原创国产| 欧美日本在线观看| 高清亚洲欧美在线看| 日韩区欧美国产区在线观看| 鲁鲁鲁爽爽爽在线视频观看| 亚洲欧美一区二区三区图片| 精品国产中文一级毛片在线看| 曰AV在线无码| 国产日韩精品一区在线不卡 | 婷婷亚洲视频| 18禁高潮出水呻吟娇喘蜜芽| 国产在线精品网址你懂的| 思思热在线视频精品| 国产成人综合日韩精品无码不卡 | 欧美性精品不卡在线观看| 亚洲精品国产成人7777| a毛片免费在线观看| 97久久免费视频| 日韩经典精品无码一区二区| 亚洲清纯自偷自拍另类专区| 亚洲精品自产拍在线观看APP| 伊人网址在线| 91蜜芽尤物福利在线观看| 99久久婷婷国产综合精| 久久精品亚洲专区| 国产91九色在线播放| 国产毛片网站| 久久国产成人精品国产成人亚洲 | 国产精品免费p区| 91精品啪在线观看国产91九色| 97人妻精品专区久久久久| 又爽又大又黄a级毛片在线视频| 成年片色大黄全免费网站久久| 毛片网站观看| 亚洲AⅤ永久无码精品毛片| 免费人欧美成又黄又爽的视频| 97视频精品全国在线观看| 一本大道视频精品人妻| 亚洲福利网址| 91无码人妻精品一区二区蜜桃| 手机在线国产精品| 国产成人亚洲无吗淙合青草| 国产亚洲视频播放9000| 国产视频 第一页| 精品无码一区二区三区电影| 亚洲无码不卡网| 精品欧美视频| 日本一区二区三区精品视频| 色综合色国产热无码一| 国产毛片高清一级国语 | 青青国产在线| 国产特一级毛片| 亚洲午夜天堂| 国产成人av大片在线播放|