Re: [問題] Computer Architecture 的幾個名詞解釋

看板CSSE (電腦科學及軟體工程)作者 (www)時間13年前 (2011/03/25 23:50), 編輯推噓4(406)
留言10則, 3人參與, 最新討論串3/3 (看更多)
※ 引述《sean72 (.)》之銘言: : 小弟最近有一次面試 : 裡面問了幾個名詞 : 由於我不是資訊工程背景出身 關於Computer Architecture的內容都是自修的 : 底子沒有很紮實 : 不過有幾個問題我不知道該如何找答案 : 另外由於這個面試的職位是韌體工程師 用C寫16位元系統的處理器 : 希望板上的高手能從這方面下手 指點迷津 : 下面有A. B. 兩大題 : ===== : A. : 1. MEMORY SPACE : 2. I/O SPACE : 3. MEMORY HEAP : 4. MEMORY STACK (後文恕刪) 關於 3. MEMORY HEAP 和 4. MEMORY STACK 最近學"JAVA"有學到類似的概念分享給你 (不知道適不適用) 記憶體中 主要分成三塊 如下圖 ┌──────┐ │ Global │ ├───┬──┤ │Stack │Heap│ └───┴──┘ Global 主要是用來存放 "全域變數" Stack 主要是用來存放 "基本型別變數" 或 "參考型別變數的參考值" Heap 主要是用來存放 "參考型別變數的值" 例如 : int a = 8; 這a = 8 都是存在Stack中 而 String b = "Happy"; 這 "Happy" 則是存到Heap中 Stack的部分b所儲存的是 "Happy" 在Heap中的位置(稱參考值) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.116.6.94

03/26 13:09, , 1F
java配置的觀念可能不太適用在原PO提的地方吧?
03/26 13:09, 1F

03/26 13:09, , 2F
或者說這種配置東西是跟語言本身有關的
03/26 13:09, 2F

03/26 13:10, , 3F
例如以C來說是不是就沒有參考型別變數?
03/26 13:10, 3F

03/26 16:17, , 4F
我也是在想好像跟C有點出入XD
03/26 16:17, 4F

03/27 00:37, , 5F
把java參考想成c指標就通了 (雖然不完全等價)
03/27 00:37, 5F

03/27 00:53, , 6F
雖說如此,但java中的"參考型別變數"應該不在C裡頭
03/27 00:53, 6F

03/27 00:54, , 7F
常見的說法是不是比較像function內宣告的local變數會被放
03/27 00:54, 7F

03/27 00:55, , 8F
在stack frame,static和動態配置的部分會在heap?
03/27 00:55, 8F

03/27 15:28, , 9F
我記得static的會放在Golbal捏
03/27 15:28, 9F

03/27 15:40, , 10F
C語言用malloc來配置一個struct 不就是在heap裡嗎?
03/27 15:40, 10F
文章代碼(AID): #1DZBcpE0 (CSSE)
文章代碼(AID): #1DZBcpE0 (CSSE)