本週學習了計算機語言從低階到高階:機器語言(用二進位制表示)、組合語言(加入了助記符)以及高階語言(更加具有可讀性),了解了虛擬機器pep/8執行原理,並使用pep/8完成了機器碼和組合語言的簡單程式設計,更深入地了解到計算機系統執行的原理;知道了偽**在程式設計時的重要性,並了解到偽**不必拘泥於形式,而是要清楚表達目的以及實現過程;同時在除錯程式時了解到了手動模擬程式的重要性:當邊界值取值有問題時,不妨帶入幾個簡單的資料,在執行程式前先動筆模擬計算機操作看會出現什麼結果;了解了分支結構以及迴圈結構。
《自學是門手藝》第11章第3節中關於python中lambda的官方文件的舉例有點難以理解:
通過查詢資料,動手模擬修改程式等方式,我發現了首先用列表變數名稱的一部分可以代指整個變數,如上圖中可用pair代替pairs,其實也可用p代替pairs;其次lambda表示式在此情況下返回的是列表中元素按第i+1個元素(為元組索引)排序的值,如圖中就是按第二個元素大小排序;第三,若將pair[1]換成其他值如pair[0]或pair[-1]又會怎麼樣呢?通過除錯,我發現如果索引值大於了元素個數-1就會報錯,索引值小於0變回將其變成範圍內的值(有幾個元素索引值的範圍就屬於幾元域)。
通過學習switch語句,我發現了多種情況下其相對if語句的巨大優越性:條件不易重疊交叉,語句結構簡單不冗雜,可讀性強。
程式設計時間 25/109
20191218《資訊保安導論》第六周總結
本週學習了如何描述計算機問題求解的過程,並通過此學習到解決生活中其他問題的一些技巧與方法 尋找熟悉的情況 直接呼叫 分治法 devide and conquer 自頂向下的方法 將問題一層層具體化 等 此外,了解了演算法的定義,明確了明確指令的定義 計算機能夠直接執行的語句 同時還學習了集中常見演算...
《資訊保安專業導論》第6周學習總結
這個作業屬於哪個課程 班級的鏈結 如2020 2021 1資訊保安專業導論 這個作業要求在 這個作業的目標 電腦科學導論第7章,python第十章 作業正文 電腦科學概論第七章 1.polya如何解決問題 即理解,找到聯絡或尋找輔助形成方案,執行方案,分析解決方案 2.搜尋演算法 如順序檢索,二分檢...
《資訊保安專業導論》第5周學習總結
這個作業屬於哪個課程 這個作業要求在 作業要求的鏈結 如2020 2021 1資訊保安專業導論第五周作業 這個作業的目標 總結第五周學習內容 作業正文 學習了第五,六章的內容,並且完成了題目。自學了關於機器的組合語言,pep9,異或加密。行數 新增 累積 部落格量 新增 累積 學習時間 新增 累積 ...