電子技術論文題目

  電子技術誕生近半個世紀以來,使電氣工程、電子技術、自動化技術等領域發生了深刻的變化,小編整理了,有興趣的親可以來閱讀一下!

  

  1.衛生間照明燈、換氣扇自動控制器

  2. 節能燈的設計

  3. 10MHZ數字頻率計邏輯電路設計

  4. 觸控開關電路

  5. 聲光自動延時節電開關

  6. 氣體煙霧報警器

  7. 數位電子日曆

  8. 微控制器交通燈自動化控制的設計

  9. 數字溫度計的設計

  10. 日光燈電子啟輝器的製作

  11. LED數顯冰箱溫控器

  12. 多路智力競賽搶答器

  13. 自制多功能音樂盒

  14. 亮滅自動控制應急燈

  15. 用單片機制作電池容量測試儀

  16. 自動感應開關設計

  17. 簡單實用的多功能遙控裝置

  18. 用微控制器控制的大型十字路口的交通燈設計

  19. 電動機的常見故障及其分析

  20. LED大型廣告牌翻轉系統的設計

  21. 電動機的選擇

  22. PCB製作中的佈線工藝

  23. 基於PLC的四層電梯控制系統的設計

  24. PLC在電子技術中的應用

  25. 微控制器在電子技術中的應用

  26. 門衛LED提示牌的設計

  27. 基於PLC的三層電梯控制系統設計

  28. 電子技術在燈光控制中的應用

  29. 遠距離遙控裝置的設計

  30. 紅外報警器的設計

  31. 用LED製作照明系統的研究與應用

  32. 數字式熱敏電阻溫度計

  33. 交通訊號燈控制系統的設計

  34. 搶答器的設計

  35. 樓道照明感應自控燈設計

  36. 家用對講機設計

  37. 防盜報警系統設計

  38. 電視監控系統設計

  39. 簡易數字電壓表的設計

  電子技術論文範文

  電子商務安全技術

  摘要:今天電子商務安全技術主要指的是交易物件的身份認證,交易過程的安全。安全技術的基礎就是大數運算。例如RSA數字簽名演算法它的安全性就是建立在大數計算上,該數字簽名演算法的資料安全長度為1024位,該長度遠遠超過了計算機的字長,所以在處理過程中無法使用單變數直接運算,而必須設計出相應的演算法,實現大數運算。本文給出大數無符號整數四則運算***大數加減乘除***。

  關鍵詞:電子商務 安全技術 四則運算 VB程式原始碼

  中圖分類號:TP393.08 文獻標識碼:A 文章編號:1007-9416***2013***10-0200-03

  1 前言

  電子商務安全技術基礎就是大數計算。所謂大數指的是超出計算機字長的一種數值計算方式,例如使用VB設計程式時資料是儲存在變數中,使用的變數分為不同型別,其中包括位元組型Byte佔用一個位元組,整型Integer佔用兩個位元組,長整型Long佔用四個位元組,雙精度Double佔用八個位元組。所以使用變量表示資料或進行資料運算時最大的資料使用Double型佔用八個位元組共64Bits,如果處理的資料長度在64Bits以下可以直接使用變數直接進行運算,如果處理的資料長度超出64Bits,就無法使用變數直接進行運算,而必須設計出相應的演算法模型。

  2 二進位制整型陣列

  數制是資料表示的一種方式。在生活當中我們通常使用的數制是十進位制,而計算機中使用的是二進位制,在程式設計時還可能用到八進位制或十六進位制。對同一個數值可以用不同的數製表示方式。

  對比不同數制數值的運算,十進位制手工計算比較常用,而使用計算機進行計算時十進位制就非常麻煩,解決的辦法就是使用二進位制資料。在上一篇論文《任意長度數制轉換》當中闡述了二進位制和十進位制之間的轉換,其中子程式Longdtob是將十進位制資料轉換成二進位制資料,子程式Longbtod是將二進位制資料轉換成十進位制資料。這兩個轉換子程式是在不同數制字串之間的轉換,但是這種轉換的字串資料還不能用於計算,為此我們必須對計算用的資料進行如下處理:

  本文設計的演算法模型是採用二進位制整型陣列來儲存資料。

  陣列定義語句為Dim mva***2050*** as integer。陣列名為mva,陣列元素個數為2050,在此元素的個數就是表示二進位制數值資料的長度。如果需要可以增加元素個數,這樣就達到增加處理資料的長度。每一個數組元素值只有1或0兩個。

  下面是兩個轉換子程式,一個是二進位制字串轉二進位制整型陣列,另一個是二進位制整型陣列轉二進位制字串。

  ***1***二進位制字串轉二進位制整型陣列子程式。

  轉換子程式定義

  Public Sub binstobinv***ByVal vs As String, ByVal sl As Integer, ByRef binv****** As Integer, ByRef sst0 As Integer, ByRef sed0 As Integer, ByRef scrt As String***

  Dim i As Integer, j As Integer

  sst0 = sed0 - sl + 1

  j = sed0 - sst0 + 1

  For i = sed0 To sst0 Step -1

  binv***i*** = Val***Mid***vs, j, 1******

  j = j - 1

  Next i

  scrt = "S"

  End Sub

  二進位制字串轉二進位制整型陣列子程式呼叫:

  bins =”1101”

  binl = Len***bins***

  st0 = 1

  ed0 = 2050

  Call binstobinv***bins,binl,binv******,st0,ed0,svrt***

  子程式運算結果

  Binv***2047***=1

  Binv***2048***=1

  Binv***2049***=0

  Binv***2050***=1

  st0=2047

  ed0=2050

  ***2***二進位制整型陣列轉二進位制字串子程式。

  轉換子程式定義

  Public Sub binvtobins***ByRef binv****** As Integer,ByVal sst0 As Integer,ByVal sed0 As Integer,ByRef vs As String,ByRef vsl As Integer,ByRef scrt As String***

  Dim i As Integer

  i = sst0

  vs = ""

  vsl = 0

  Do

  If binv***i*** <> 0 And vsl = 0 Then

  vsl = sed0 - i + 1

  End If

  If binv***i*** = 0 And vsl = 0 Then

  Else

  If binv***i*** = 0 Then

  vs = vs + "0"

  Else

  vs = vs + "1"

  End If

  End If

  i = i + 1

  If i > sed0 Then

  Exit Do

  End If

  Loop

  If sst0 = sed0 And binv***sst0*** = 0 Then vs = "0"   If sst0 = sed0 And binv***sst0*** = 1 Then vs = "1"

  scrt = "S"

  End Sub

  二進位制整型陣列轉二進位制字串子程式呼叫:

  St0=2046

  ed0 = 2050

  binv***2046***=1

  binv***2047***=0

  binv***2048***=1

  binv***2049***=1

  binv***2050***=1

  Call binvtobins***binv******, st0, ed0, binsv, binlv, svrt***

  子程式運算結果

  Binsv=”10111”

  Blnlv=5

  用二進位制整型陣列用來儲存任意長度二進位制資料,運算的時候也使用二進位制整型陣列。

  3 無符號整型四則運算

  數學中數值的基本運算指的是四則運算,也就是常說的加減乘除運算,在運算除法時還可以得到一個模。在計算機中進行程式設計時資料運算的複雜程度不一樣,十進位制最複雜,而使用二進位制最為簡便。

  ***1***加法子程式Longadd。

  1101 vad1***2050***被加數

  + 110 vad2***2050***加數

  10011 vad0***2050***結果和

  1100 mc是進位

  加法子程式呼叫:

  vad1***2047***=1 被加數

  vad1***2048***=1

  vad1***2049***=0

  vad1***2050***=1

  sst1=2047

  sed1=2050

  vad1***2048***=1 加數

  vad1***2049***=1

  vad1***2050***=0

  sst2=2048

  sed2=2050

  Call longadd***vad1******, sst1, sed1, vad2******, sst2, sed2, vad0******, sst0, sed0, svrt***

  運算結果

  vad0***2046***=1 和

  vad0***2047***=0

  vad0***2048***=0

  vad0***2049***=1

  vad0***2050***=1

  sst0=2046

  sed0=2050

  ***2***減法子程式Longsub。

  110 mc借位

  1101 vad1******被減數

  - 110 vad2******減數

  111 vad0******結果差

  使用此模型時被減數要大於等於減數。

  減法計算過程子程式Longsub呼叫:

  vad1***2047***=1 被減數

  vad1***2048***=1

  vad1***2049***=0

  vad1***2050***=1

  sst1=2047

  sed1=2050

  vad2***2048***=1 減數

  vad2***2049***=1

  vad2***2050***=0

  sst2=2048

  sed2=2050

  Call longsub***vad1******,sst1,sed1,vad2******,sst2,sed2,vad0******,sst0,sed0,svrt***

  運算結果

  Vad0***2048***=1 差

  Vad0***2049***=1

  Vad0***2050***=1

  Sst0=2048

  Sed0=2050

  ***3***乘法子程式Longmul。

  1101 vad1***2050***被乘數

  x 110 vad2***2050***乘數

  0000 smm***2050,2050***中間結果

  1101

  + 1101 縱向累加得到乘積

  1001110 vad0***2050***積

  在計算乘法時使用一個二進位制整型二維陣列smm******儲存中間結果。在計算時縱向儲存每一個乘數數位乘上被乘數,填寫好資料以後從個位向左縱向相加得到乘法的積。

  乘法計算過程子程式Longmul呼叫:

  vad1***2047***=1 被乘數

  vad1***2048***=1

  vad1***2049***=0

  vad1***2050***=1

  sst1=2047

  sed1=2050

  vad2***2048***=1 乘數

  vad2***2049***=1

  vad2***2050***=0

  sst2=2048

  sed2=2050

  Call longmul***vad1******,sst1,sed1,vad2******,sst2,sed2,vad0******,sst0,sed0,svrt***

  運算結果

  vad0***2044***=1 積

  vad0***2045***=0

  vad0***2046***=0

  vad0***2047***=1

  vad0***2048***=1

  vad0***2049***=1

  vad0***2050***=0

  Sst0=2044   Sed0=2050

  ***4***除法子程式Longdiv。

  vads***2050*** 商

  vad2***2050***除數 1101 vad1***2050***被除數

  vady***2050*** 餘數***模***

  除法計算過程:

  用vad2******與vad1******逐段進行比較,小於等於時商1,大於時商0***商vads*********,vady******在除不盡的時候儲存餘數***也被稱作模***。

  除法子程式Longdiv呼叫:

  vad1***2043***=1 被除數

  vad1***2044***=1

  vad1***2045***=1

  vad1***2046***=1

  vad1***2047***=0

  vad1***2048***=0

  vad1***2049***=0

  vad1***2050***=1

  sst1=2043

  sed1=2050

  vad2***2047***=1 除數

  vad2***2048***=1

  vad2***2049***=0

  vad2***2050***=1

  sst2=2047

  sed2=2050

  Call longdiv***vad1******,sst1,sed1,vad2******,sst2,sed2,vads******, vssts, vseds, vady******, vssty, vsedy, svrt***

  運算結果

  vads***2046***=1 商

  vads***2047***=0

  vads***2048***=0

  vads***2049***=1

  vads***2050***=0

  vssts=2046

  vseds=2050

  vady***2048***=1 餘

  vady***2049***=1

  vady***2050***=1

  vssty=2048

  vsedy=2050

  4 結語

  大數運算是通過設計的演算法進行加減乘除四則運算,本文設計的演算法是採用二進位制整型陣列儲存長度超出計算機字長的資料。文中陣列的長度決定了處理的二進位制資料數值的大小,本文的陣列長度是2050個二進位制數位,如果需要可以任意增加陣列的長度,只要計算機的記憶體足夠大。目前我們使用的計算機基本上都能夠滿足這個要求,四則運算的難點是除法,如果使用十進位制非常複雜,相對來講二進位制相對來講要容易一些。

  當前論文是系列論文的第二篇“任意長度數值無符號整數四則運算”,上一期《數字技術與應用》發表了“任意長度數值數制轉換”。後續論文包括第三篇“任意長度數值有符號整數四則運算”。第四篇“任意長度數值實數四則運算”。在系列論文全部發表以後歡迎讀者向作者索取VB程式原始碼。希望讀者能夠繼續關注《數字技術與應用》。

  參考文獻

  [1]衷仁保著.《計算機代數學》.科學出版社.

  [2]BruceSchneier著,吳世忠譯.《應用密碼學》.機械工業出版社.

  [3]馮萍著.《組合語言與介面技術》.機械工業出版社.

  [4]Mohan Atreya著,賀軍等譯.《數字簽名》.清華大學出版社.