編譯原理

来源:https://www.cnblogs.com/liaowanzhong/archive/2023/11/02/17805915.html
-Advertisement-
Play Games

Java 程式員或者是 Java 工程師在逐漸成長為高級開發的時候,他 看問題的方式寫工作的方式都有自己的一套方式。每個人的工作效率不一樣,但是都要達到同一個目的。對於開發 任務而言,測試通過是最低的要求。Java 的集成開發環境十分優秀,從西方美國的 Eclipse 到歐洲的 Idea,程式員開發 ...


 

 

Java 程式員或者是 Java 工程師在逐漸成長為高級開發的時候,他 看問題的方式寫工作的方式都有自己的一套方式。每個人的工作效率不一樣,但是都要達到同一個目的。對於開發   任務而言,測試通過是最低的要求。Java 的集成開發環境十分優秀,從西方美國的 Eclipse 到歐洲的 Idea,程式員開發起來運用得越來越順暢。好的工具讓工程師的工作事半功倍。

 

Java 的代碼存在像一棵樹一樣。學習過編程開發之後,英語在國際化中的社會地位越來越高。作為通用語言,字母、數字和操作符組合就成了一句話,多了就成了一篇文章,文章一流動就成了一本書。資料庫就是存放數據書籍的大倉庫。

 

編譯器的詞法語法,《編譯原理》那本書只是略看了一點點。操作符有它存在的重要性, 就是有點抽象。簡單的東西會變得抽象,有的會變得難懂。操作符的作用和方法介面的作用   是一樣的。學習過 C++的開發工程師都知道操作符也可以自定義實現過程。

 

方法和對象其實是可以當作一回事。對象在 Java 的開發中是要在堆記憶體中分配存儲空間,


堆記憶體需要使用 Java 虛擬機進行托管。對象是引用類型數據,複雜數據類型。複雜數據類型的數據是有簡單的數據類型組合而成。簡單的數據類型是 Java 的 8 中基礎數據類型。棧stack 中只能存儲基礎數據類型,而堆中存儲基礎數據類型是一塊一塊的,很多的基礎數據類型數據組合在一起就成了堆塊。

 

簡單數據組合成為複雜數據。電腦中央系統處理器 CPU 處理數據,數據通過指令處理數據之後在寄存器,之後會在一級緩存,二級緩存,三級緩存,主要運行記憶體中存在。數據固   化會以物理介質的形式存在電腦固態磁碟中,而虛擬記憶體也是固化對數據存儲區域,存放   的是一些特有的數據。

 

電腦的基礎數據存儲介質在電腦編程語言的體現方式都是使用數組 array,像人體的細胞一樣,裡面存放的就是 10101…這樣的數字。數據在電子與電氣的體現方式是繼電器,高電頻與低電頻,物質與能量進行交互。

 

從繼電器到 手中使用的手機或者是 PC 終端,能量與數據狀態進行轉變。構建軟體項目就像搭建一座高塔一樣,從打地基到一步一步建立高層。每一層需要一層的代理解釋器,如   果需要進行數據存儲,連接遠程或者是本地資料庫。時間與空間,資源與速度,性能看處理   器與存儲器。每一層的解釋都需要時間和空間,到底一座高樓適合建立幾層,每個地方的設   計方式是不一樣。解釋器和編譯器的概念一樣,虛擬機也是一層解釋器。最底層的通用語言   是繼電器的高低電平,再往上一層的抽象數據表現方式是二進位數據 100100…。

 

CPU 的計算長度從 8 位升級到 16 位,再到 32 位和現在的 64 位,說明處理器處理數據的單位能力在提升。每 8 位就是一個位元組 byte,多個位元組再進行定義形成一些基本的編程語言數據類型。國際的一些標準組織一開始就製作了 ASCII 表,形成基礎的編碼標準使得數字和字元以及操作符進行相應的關聯,在手機上面或者是其他的嵌入式設備上面可以顯示國際標   準字元。

 

圖片的存儲方式也是類似,移動的圖片會成為視頻。聲音是移動的波紋,不移動也是二維圖   形。數字和字元對這些數據進行存儲。前人栽樹,後人乘涼,組件化,裝配組裝就成不同的   產品。用戶體驗和用戶量,看團隊和市場。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • OpenKey.Cloud 作為 ChatGPT 生態圈內的重要基礎設施,提供官方 API 的轉發,長久以來一直保持著高穩定性,這是如何做到的?今天就來揭秘 OpenKey 系統的詳細架構圖。 ...
  • 前言 筆者在大學下屬的事業單位上班,最近去幫著帶下操作系統的實驗課,這裡隨手水點參考代碼,歡迎各位領導老師蒞臨指正 實驗目標 編寫一個簡單的進程調度器 實驗內容 進程式控制制塊(PCB)的定義與管理 進程調度演算法的實現 進程創建、銷毀和切換 給定一批進程對比3-4種調度演算法的時間(自選演算法) 實驗參考答 ...
  • 正則表達式(RegEx)是一系列字元,形成了一個搜索模式。RegEx 可用於檢查字元串是否包含指定的搜索模式。 RegEx 模塊 Python 中有一個內置的包叫做 re,它可以用於處理正則表達式。導入 re 模塊: import re Python 中的 RegEx,一旦導入了 re 模塊,您就可 ...
  • ArrayList在多線程情況下,不安全 具體代碼 package com.shaonian.juc.list_thread_secure; import java.util.ArrayList; import java.util.List; import java.util.UUID; /** * ...
  • 8鎖現象 八鎖->就是關於鎖的八個問題 鎖是什麼,如何判斷鎖的是誰 對象、class模板 深刻理解鎖 鎖的東西無外乎就兩樣:1、同步方法的調用者,2、Class模板。 同一個鎖中,只有當前線程資源釋放後才會被下一個線程所接手。 同步方法的調用者是兩個不同的實例時,互不相關。 靜態同步方法(stati ...
  • 生產者和消費者問題 synchronized版-> wait/notify juc版->Lock 面試:單例模式、排序演算法、生產者和消費者、死鎖 生產者和消費者問題 Synchronized版 package org.example.pc; public class A { public stati ...
  • Lock鎖(重點) 傳統的synchronized 傳統的解決多線程併發導致的一些問題我們會使用synchronized關鍵字來解決,synchronized的本質就是隊列、鎖。 Lock的實現類有:可重覆鎖(最常用)、讀鎖、寫鎖 在創建可重覆鎖時,可傳入boolean類型值來決定該鎖是公平鎖(先來 ...
  • 進程和線程 進程 一個程式,如QQ.exe,是程式的集合 一個進程往往可以包含多個線程,至少包含一個 java預設有兩個線程,GC垃圾回收線程和Main線程 線程:一個進程中的各個功能 java無法真正的開啟線程,因為java是運行在虛擬機上的,所以只能通過C++,通過native本地方法調用C++ ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...