<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 智能計算 > 業(yè)界動態(tài) > 微軟進軍量子計算機 年底公布全新語言模擬器

          微軟進軍量子計算機 年底公布全新語言模擬器

          作者: 時間:2017-10-16 來源:硅谷網 收藏
          編者按:量子計算機的時代很可能還需要許多年才會到來?,F(xiàn)在微軟公司正在為它的量子計算機預演做著準備。

            近日公司宣稱將開始下一個大動作:。今年年底,公司計劃公布一種全新的語言,以及一種模擬器。借助這些新技術,研發(fā)人員將能夠研發(fā)和測試執(zhí)行量子運算的量子程序。

          本文引用地址:http://www.ex-cimer.com/article/201710/370116.htm

            量子運算使用了疊加和糾纏等量子特征執(zhí)行運算。傳統(tǒng)數(shù)字計算機由二進制數(shù)字構成(0或1),而量子計算機是由量子比特構成。量子比特在某種程度上能夠同時代表0和1(也就是所謂的量子疊加)。量子比特代表多重數(shù)值的能力讓量子計算機的運算能力遠超過傳統(tǒng)計算機。

            傳統(tǒng)計算機由邏輯閘構建,這種晶體管組合能夠以各種方式組合數(shù)字進行運算,但是這種構造對于編寫程序的人來說大部分是看不見的。程序和算法并非按照邏輯閘進行編寫的,而是使用了更高水平的概念。目前的量子算法在某種程度上對于電子工程師來說更熟悉,而非軟件工程師。因為量子算法通常代表了量子回路,而不是更常用的程序語言概念。

            公司的量子計算機語言為編程量子計算機提供了更讓人熟悉的樣式,它借用了C#、Python和F#語言基礎。研發(fā)人員仍然需要使用和了解量子邏輯閘以及它們的運作,但是他們仍然可以使用它們編寫程序。

            量子計算機語言正逐漸融入到開發(fā)工具當中,這意味著它不僅支持色彩編碼,也支持調試等其它開發(fā)功能。由于量子計算機現(xiàn)在還相當罕見,因此微軟公司也計劃公布兩種量子模擬器版本,一種能夠在本地運行,一種能夠在Azure云平臺運行。這些模擬器將能夠運行量子程序,并且提供一些可比得上傳統(tǒng)開發(fā)工具的調試體驗。

            從長期角度來說,微軟的野心是要在一臺真正的量子計算機上運行量子程序,而且微軟正在致力于量子計算機的研發(fā)。微軟公司正在探索一種拓撲量子比特的研究。這是非常吸引人的,因為它們能夠幫助我們解決量子計算機常見的難題。量子態(tài)是非常微妙的,而且量子噪音會給運算帶來錯誤。但是拓撲量子比特能夠添加到算法中修正這種噪音。

            微軟公司在研發(fā)量子計算機和量子計算機程序的同時,也在探索一種所謂的量子抵抗加密算法。這種算法的設計是為了在傳統(tǒng)計算機上運行,但是即使是在大型量子計算機時代也能保護系統(tǒng)安全。但是將這些算法研發(fā)出來,并且完成驗證后進行廣泛傳播還需要很多年。

            幸運的是,量子計算機的時代很可能還需要許多年才會到來?,F(xiàn)在,微軟公司正在為它的量子計算機預演做著準備。這場使用量子模擬器和量子編程語言的預演即將在年底之前進行。微軟公司還將公布教程和函數(shù)庫來幫助研發(fā)人員熟悉量子計算機。



          關鍵詞: 微軟 量子計算機

          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();