當前位置:首頁 » 編程軟體 » 編譯器和操作系統

編譯器和操作系統

發布時間: 2025-05-26 10:55:44

⑴ 操作系統和編譯器是怎麼識別全局變數和局部

  • 操作系統,只管調度進程,線程編譯器根據編程語言的定義,確定變數的作用於,存儲類型,生命周期!

  • 定義在函數外部的變數,只有文件靜態變數,和外部變數

  • 外部變數,是實實在在的全局變數,不論作用域還是生命周期。

  • 靜態變數是局部作用域的,生命周期為,程序的生命周期的變數。

  • 自動變數和函數參數,是局部作用域的生命周期為函數結束的局部變數。

  • 寄存器變數,用register定義,是局部變數;

  • 函數內部的靜態變數,語句組內部的靜態變數,局部作用域的,生命周期為,程序的生命周期的變數。

  • 靜態變數,編譯器,可以通過static關鍵字知道。

  • 自動變數,1)函數內部定義的非靜態變數,非寄存器變數是自動變數。

  • 2)函數參數,只能是自動變數,不過也可能定義在寄存器中。

  • 這和調用約定有關,因此不可以用register定義。

  • C語言沒有全局變數這種數據類型。

  • 只有4種存儲類型,和變數的作用域與生命周期的概念。

  • C++同樣沒有全局變數這種數據類型。

  • 有另外的兩種作用域

  • 1)namespace作用域。

  • 2)類(類型)作用域。

  • C只有全局,文件,函數以及函數內部的語句組,4種逐漸縮小的作用域。

  • 其中內層,對外部作用域,具有完全的遮蔽作用。

  • C++可以通過作用域限定符,區分不同作用域(類,名空間)的名字。

  • 類作用域,可以通過訪問許可權,限制外部的訪問權。

  • 函數作用域(語句組作用域)是封閉的作用域,外部不可以使用函數內部定義的名字。

  • 也不會和外部有命名沖突,只會遮蔽外部的名字。

  • 類作用於,和名空間由於訪問方式不同,命名沖突和遮蔽有些特殊。

  • 函數和全局域,基本不會和類作用域有命名沖突,除非類方法內部。

  • 命名空間,可以避免命名沖突。

  • 類繼承體系中,則有遮蔽現象。

  • 還有訪問許可權問題。

  • 實際上,全局變數,有兩個概念可以判定

  • 1)作用域(空間)===>由定義和聲明位置,和定義和聲明使用的關鍵字決定。

  • 2)生命周期(時間)===>外部和靜態變數,的生命周期是全局的,從初始化到程序結束。

  • 函數參數,和函數局部非靜態變數,是局部變數

  • 函數參數的傳遞,是跨函數的(實參,變成形參);

  • 函數內部定義的,局部變數,只有定義處可見,作用域是函數甚至語句組局部,

  • 其中靜態變數,生命周期是全局的,非靜態是函數甚至語句組的。

  • 全局變數,不是C,C++的概念。

  • 而是,使用編程語言的程序員的概念。

  • 所以,全局變數和C,C++的存儲類型,作用域,生命周期等,不是一一對應的概念。

  • 所以,可以有不同的理解。

  • 所以這個概念是很模糊的,不清晰的。

  • 比如局部靜態變數,類的靜態變數,是否全局變數,就不是可以清晰的說明的。

⑵ 先有編譯器 還是 先有操作系統 那個最早出來

是先有編譯器,然後再有的操作系統。
事例:

1949年,某大學開發了一款(電子延遲存儲自動計算機)第一個存儲程序的計算機。是第一台採用馮·諾依曼體系結構的計算機。後來跟著它又出現了一款匯編器名字叫初始命令。

1956年,出現了一款匯編器名字叫聯合航空符號匯編程序和公式翻譯程序語言。

1973年,出現了一款操作系統名字叫控制\監控程序。(第一個基於英特爾處理器的操作系統,其實就是最早的操作系統,其他網路站點上有詳細介紹)

電子延遲存儲自動計算機 EDSAC
初始命令 initial orders
聯合航空符號匯編程序 uasap-1
公式翻譯程序語言 Fortran
控制\監控程序 CP/M

還有,「查雨桃」說的不太妥,其實兩者都是系統軟體,都有幾率用機器語言編寫;
不過事實是由打孔的紙袋(機器語言)然後發展為上述然後發展出了高級語言公式翻譯程序。

⑶ 電腦自帶編譯器么還是安裝操作系統是會帶有自動安裝編譯器

不是所有的系統都帶. 很多linux都會帶gcc, 以前的DOS和win98帶qbasic,
現在的Windows基本沒有帶編譯器,但是帶有一些腳本解釋器,包括javascript, vbscript
Windows vista帶powershell解釋器。
,編譯器就是將「一種語言(通常為高級語言)」翻譯為「另一種語言(通常為低級語言)」的程序。一個現代編譯器的主要工作流程:源代碼 (source code) → 預處理器 (preprocessor) → 編譯器 (compiler) → 目標代碼 (object code) → 鏈接器(Linker) → 可執行程序 (executables)
高級計算機語言便於人編寫,閱讀交流,維護。機器語言是計算機能直接解讀、運行的。編譯器將匯編或高級計算機語言源程序(Source program)作為輸入,翻譯成目標語言(Target language)機器代碼的等價程序。源代碼一般為高級語言 (High-level language), 如Pascal、C、C++、Java、漢語編程等或匯編語言,而目標則是機器語言的目標代碼(Object code),有時也稱作機器代碼(Machine code)。

⑷ 到底是先有編譯器還是先有操作系統

1946年,第一台真正意義上的數字電子計算機ENIAC誕生。

1952年,Grace Murry Hopper女士發布世界上第一套高級語言編譯器A-0,可以在Sperry機器上將英文、法文和德文編譯成機器語言(原來最早的高級語言是它們,呵呵)。1956年,她做出程序語言FLOW-MATIC。她對計算機界有很多貢獻,如bug這個詞就是她發明的。她最喜歡的一句名言是:A ship in port is safe, but that is not what ships are built for.

同樣是在1956年,IBM公司推出科學704計算機。IBM/704大型機配備了世界上最早的操作系統。

1957年,第一個被廣泛使用的高級語言——FORTRAN誕生。

1964年,IBM/360系列完成,它配備的OS/360是早期操作系統的代表。

⑸ 程序語言,操作系統,編譯器三者之間有何關系

程序語言,操作系統,編譯器三者之間有何關系?

可以理解為程序語言需要在編譯器裡面進行編譯,但是編輯器需要運行在操作系統里
編程語言(programming language),是用來定義計算機程序的形式語言。它是一種被標准化的交流技巧,用來向計算機發出指令。一種計算機語言讓程序員能夠准確地定義計算機所需要使用的數據,並精確地定義在不同情況下所應當採取的
簡單講,編譯器就是將"一種語言(通常為高級語言)"翻譯為"另一種語言(通常為低級語言)"的程序。一個現代編譯器的主要工作流程:源代碼 (source code) → 預處理器 (preprocessor) → 編譯器 (piler) → 目標代碼 (object code) → 鏈接器 (Linker) → 可執行程序 (executables)
操作系統是管理計算機硬體資源,控制其他程序運行並為用戶提供交互操作界面的系統軟體的集合。操作系統是計算機系統的關鍵組成部分,負責管理與配置內存、決定系統資源供需的優先次序、控制輸入與輸出設備、操作網路與管理文件系統等基本任務。操作系統的種類很多,各種設備安裝的操作系統可從簡單到復雜,可從手機的嵌入式操作系統到超級計算機的大型操作系統。目前流行的現代操作系統主要有Android、BSD、iOS、Linux、Mac OS X、Windows、Windows Phone和z/OS等,除了Windows和z/OS等少數操作系統,大部分操作系統都為類Unix操作系統。

操作系統和編譯器的關系?

操作系統是和硬體的橋梁,所有軟體如果要運行,就得在裝有操作系統的機器上運行。沒有安裝操作系統的計算機,是不能運行其它軟體的,裝上了linux,你才能在它上面安裝g, 你可以用g編譯各種軟體,比如linux版的QQ等,同樣你也可以用g編譯linux系統軟體(因為系統軟體也是軟體),並把編譯好的linux軟體放到機器上安裝。
當然也可以寫個編譯器在沒有操作系統的機器上編譯,但這個編譯器就要做很多和硬體打交道的事。至少g是不行的,要運行在操作系統上的。

操作系統有哪幾大特徵?它們之間有何關系?

說得通俗點 就是一個操作平台 你要是用什麼軟體或執行什麼程序 都需要建立在一個支持的平台上才好發揮出作用
之間 不知你所指是什麼

家庭版 專業版 旗艦版 一個比一個功能更全面

關於編譯器 操作系統 CPU

是編譯器定的... 基本數據類型(VC為例)主類型分類型修飾符佔用空間表示範圍整形整數形 intshort2位元組-32768 ~ 32767long(默認)4位元組-231 ~ (231 -1)unsigned short2位元組0 ~ 65535

操作系統可以編譯高級語言源程序嗎

首先你要搞清楚操作系統與編譯器的概念,操作系統是一個軟體平台,本身沒有編譯功能。編譯器是運行於操作系統上的一個應用程序,只要有人把某種編程語言的編譯器移植到這個操作系統上,那麼就可以在這個操作系統上編譯這種語言。
另外,不知道你說的高級語言是哪些,C++和JAVA之類的算不算?
一般來說,電腦用的操作系統上面,比如windows 和 Linux 都有多編譯器,而小型的嵌入式操作系統則少有編譯器可以能運行其上。

用戶、計算機和程序員三者之間有何關系

用戶是使用計算機的,計算機為用戶提供服務,而程序員與計算機就像"朋友",可以彼此交流。實現人機對話。一一一個人解答,望採納。

語言編譯器是一種( ) A 系統軟體 B 微機操作系統 C 字處理系統 D 源程序

可以先明晰下規則 答案來自hhqq005
編譯器:翻譯工具,把高級語言源程序翻譯為匯編語言源程序,再把匯編源序翻譯成目標代碼供連接程序使用。
語言:一個規則。例如:C語言,它規定程序入口為main(),和其它規定。並把這些 <規定的集合> 命名為C語言。
TC:一個開發工具,它包括文本編輯器,編譯器,連接程序,調試環境等等。TC中的編譯器是TCC.EXE文件。
關於匯編:
匯編語言是一個規則,
匯編程序是一個翻譯工具
匯編源程序是一個 符合(匯編語言)規則的程序代碼
匯編是一個過程,這個過程是匯編程序 把匯編源程序 翻譯 為目標代碼的過程
對於高級語言:翻譯的過程叫做編譯,翻譯工具叫做編譯程序或編譯器。
我覺得 這樣看的話 是選擇A

操作系統和語言程序的關系

操作系統是系統軟體,不是編程語言。軟體是由編程語言編寫。常用的語言如匯編,C,C++,VC,VB,JAVA,DELPHI等。大部分應用程序都應在一定的系統平台(Windows,Unix,LInux)下工作。並不是說一定要有操作系統。否則在60-70年代計算機還有什麼用。但是有了操作系統對於人們應用計算機帶來了很多便利。至於說編程語言否也需要系統支持。還是那句話,在沒有系統前,人們就是用匯編和C語言編寫了windows系統!
當然一定的語言要有一定的編譯環境,所謂編譯環境就是一定的軟體集成環境,如要有編輯程序,連接程序,編譯程序,解釋程序等!而這些程序又需要系統的支持,所以編程語言需要系統支持,只不過並非是windows系統。在這里就我個人認為,只有匯編語言例外。

工作、家庭和親人三者之間有何關系?

家庭是一群由血緣和婚姻紐帶連接起來的人。這些人生活在一個屋頂下,共同開支預算。當然這僅僅意味著理論上的概念,在現實生活中,家庭生活是與周圍活躍的社會生活互相聯系的,它要受當時經濟、政治、文化及人們心理,信仰等變化的影響。無論在世人看來是多麼獨立的家庭,它實際上多多少少要反映出全部重要的社會現象,而反過來,所謂的「大世界」(即社會生活也必然要賦予家庭中人際關系所具有的特徵,例如夫妻,父子關系等等)。
在社會主義所有制的影響下,隨著國家對公民家庭物質福利的改善,家庭作為以父親為首的經濟生產個體的職能已經消亡,現在蘇聯人的家庭關系首先指的是人的關系,而不是指經濟關系。蘇聯人普遍認為,夫妻子女間的情愛和共同利益是他們最關心的方面。
當然,迄今為止,經濟在家庭生活中仍然還起著很大作用,它突出表現在家庭的物質利益和家庭成員的自助活動中。社會主義制度確保人與人之間的平等,因此其生活方式的一個重要特點就是夫妻共同管理家庭,共同分擔家務勞動。隨著時代的變遷,我們對於家庭與社會之間的責任和義務都有重新分配的必要。由於科技事業的發展,在很大程度上解決了蘇聯人民的衣、食、住、行狀況,他們無需再花費更多的精力從事一些瑣細的家務勞動,從而把大部份精力和時間投入從事社會性的創造活動。一般說來,家庭的建立和和睦幸福的確需要一定程度的物質條件,可這遠遠不是決定家庭幸福的唯一絕對因素。為了人們家庭安穩和諧,有必要首先清醒地認識幸福所包含的意義。為此,蘇聯社會學家V·波耶柯進行了測試,他把調查結果分為三類:
1.物質因素:一套公寓和物質福利優厚。
2.人的因素:夫妻間的相互理解,如對孩子的看法,有信心建立牢固的婚姻,共同的興趣等。
3.其它因素:令人滿意的工作,文化程度,好職位,社交范圍等。
被調查的3220個列寧格勒市民中,有一半的人認為家庭幸福首先取決於夫妻間的理解,然後才談得上其它因素。這次調查結果與蘇聯社會學家Z·楊柯夫1978——1979年與蘇聯《勞動婦女》雜志編輯部所做的調查一樣,不論男女公民,在確定自己的家庭關系時都首先考慮相互的理解和體貼,雙方互相尊重,第二是要能共同承擔養育子女的義務,但是,由於男女生理,心理特徵的差異,使女性比男性更為強調理解和信任的重要性,至於家庭之外的其它因素,男女均認為有一個滿意的工作是必要的前題,女性側重雙方共度餘暇,積極參加旅遊,社交是鞏固婚姻紐帶有效的辦法;男性更為珍視自我意識,行動自由和在社會上的個人名望及地位。
摘自網路
這樣,由於男女願望的差異和家務勞動,家庭生活所形成的獨特性,就使得家庭成員之間必須了解自己在家庭生活中應該扮演的角色,及所需承擔的義務。而家庭成員怎樣成功地處理好家務瑣事,家庭關系又反映出其所處社會的成熟和完善程度。社會學家認為:一個完美幸福的家庭,既要滿足其成員間婚姻和伴侶的本能的原始要求,又要使他們在自己子女身上體現出父愛或母愛,而與此同時通過大量日常共同的家務瑣事漸漸獲得正確處理夫妻關系的經驗,從而去理解家庭幸福和愛情的更深的層次。
一對和睦相愛的夫婦所關心的不僅僅是自己,而是對方的需要,這樣又提高了自己在愛人眼裡的價值,取得了他或她的尊敬。跟潘約諾夫夫婦一樣,成千上萬和睦的男女由於共同的生活目標,共同的企望密切地聯系起來,使他們能和衷共濟,屢經磨礪而不動搖婚姻家庭的基石。社會主義制度下這樣珍惜愛情,互相關心,愛撫下一代的夫妻關系正是現代蘇聯人生活的楷模。

⑹ 計算機語言和操作系統的關系是怎樣的編譯器又和操作系統的關系是怎樣的

操作系統是由計算機語言編譯而成,主要是由C語言編寫,象LINUX操作系統。反過來,操作系統又支持計算機語言編寫的源程序的運行。
編譯器和操作系統在幾年之前被劃分為系統軟體,近幾年,重新劃分之後,操作系統屬於系統軟體,編譯器屬於支撐軟體http://www.chmhome.com/knowledge/soft/20070624/57582.html
操作系統為編譯器提供環境,二者相輔相承,源代碼通過編譯器編譯,又豐富了操作系統的功能
自己的理解,可能有點亂。

熱點內容
夜神按鍵腳本 發布:2025-05-28 02:57:40 瀏覽:94
android文件上傳 發布:2025-05-28 02:52:35 瀏覽:452
我的世界伺服器主城樣式 發布:2025-05-28 02:32:56 瀏覽:13
速派壓縮比 發布:2025-05-28 02:12:51 瀏覽:64
linux復制到本地 發布:2025-05-28 02:11:13 瀏覽:257
雲伺服器網路類型 發布:2025-05-28 02:10:30 瀏覽:885
伺服器怎麼上鎖 發布:2025-05-28 02:00:11 瀏覽:422
蘋果如何一個密碼一個界面 發布:2025-05-28 01:53:04 瀏覽:383
靜態ip伺服器費用 發布:2025-05-28 01:53:03 瀏覽:430
學校學編程 發布:2025-05-28 01:52:17 瀏覽:259