主頁 > 軟體工程 > VB代碼溢位問題,新手,請高手幫忙看下

VB代碼溢位問題,新手,請高手幫忙看下

2020-09-15 09:22:45 軟體工程

Option Base 1
Private Sub Command1_Click()

Dim arr() As Integer, m As Integer, i As Integer, a As Integer
For a = 0 To Op1.Count - 1
If Op1(a).Value = ture Then
m = Val(Op1(a).Caption)
End If
Next a
ReDim arr(m)
arr(1) = 1
arr(2) = 1
For i = 3 To m
arr(i) = arr(i - 1) + arr(i - 2)            '這里 老是i=24的時候溢位
Next
Text1.Text = arr(m)
End Sub

uj5u.com熱心網友回復:

  VB6.0中Integer   范圍為 -32,768 到 32,767 之間
  你這個值  46368  斐波那契數列(24)
超出范圍
Dim arr() As string, m As string,

 還有那個 ture 拼錯了

uj5u.com熱心網友回復:

"數值“用整數,別用String 。


用Long型別最好,若是計算項數很多,還要”溢位“,用 Double 型別。
Dim arr() As Long 或者 Dim arr() As Double
其它幾個變更,用Long,或Integer都可以,差別不大。

uj5u.com熱心網友回復:

同意樓上的前半部分,arr()用long。數論方面的東西,看的就是整數,double型別精度不夠的話,數值光大沒用。

uj5u.com熱心網友回復:

如果你要在你同學面前得瑟一下,可以將arr()定義為 variant 然后后面的運算都將資料轉換為 decimal 。這樣,可以將m算到139


Option Base 1
Private Sub Command1_Click()
    Dim arr() As Variant, m As Currency, i As Long, a As Long
'    For a = 0 To Op1.Count - 1
'        If Op1(a).Value = ture Then
'            m = Val(Op1(a).Caption)
'        End If
'    Next a
    m = 139  'm最大可取值
    ReDim arr(m)
    arr(1) = 1
    arr(2) = 1
    For i = 3 To m
        arr(i) = CDec(arr(i - 1)) + CDec(arr(i - 2))
    Next
    Text1.Text = arr(m)
End Sub



最后執行結果是  50095301248058391139327916261

uj5u.com熱心網友回復:

參考 3 樓 chewinggum 的回復:
同意樓上的前半部分,arr()用long。數論方面的東西,看的就是整數,double型別精度不夠的話,數值光大沒用。

沒有具體算過,只是有一種“感覺”,用Long也要不了多少項就溢位了。
這個有點接近于 2^n 那種,開始不覺得怎么樣,到后面點就很恐怖了。

其實一般情況下,主要是掌握演算法問題,去算“很多項”并沒有多少意義。
所以我也沒想那么多。

uj5u.com熱心網友回復:

取決于你的 m 有多大。選擇合適的 arr() 資料型別。

Long 型:i = 47 時溢位。
Currency 型:i = 74 時溢位。
Single 型:i = 187 時溢位。
Double 型:i = 1744 時溢位。Variant 型相同。


uj5u.com熱心網友回復:

如果要實作的數字較大,又要求精度的話,可以用自定義型別來計算。比如 LongLong 型。也有很多大數計算的演算法。

舉一個容易理解的栗子。
你可以用兩個 Long 來表示你的數字,高位字表示百萬的個數,低位字表示百萬的余數。

兩個相加的數,高字與高字相加,低字與低字相加。當低字和超過百萬時,就減去百萬,將高字加 1(進位)。
這的栗子的好處是很容易轉換成 10 位元組的字串。高字生成的串放在前面,低字用 0 前填充到 6 位接到后面。

方法很多。

uj5u.com熱心網友回復:

僅供參考:
// 按下列數級計算e的近視值,使e有小數點后1000位有效數字。
// e=1+1/1!+1/2!+1/3!+......1/n!
#include <iostream>
#include <string>
using namespace std;
inline int compare(string str1,string str2) {//相等回傳0,大于回傳1,小于回傳-1
         if (str1.size()>str2.size()) return 1; //長度長的整數大于長度小的整數
    else if (str1.size()<str2.size()) return -1;
    else                              return str1.compare(str2); //若長度相等,則頭到尾按位比較
}
string SUB_INT(string str1,string str2);
string ADD_INT(string str1,string str2) {//高精度加法
    int sign=1; //sign 為符號位
    string str;
    if (str1[0]=='-') {
        if (str2[0]=='-') {
            sign=-1;
            str=ADD_INT(str1.erase(0,1),str2.erase(0,1));
        } else {
            str=SUB_INT(str2,str1.erase(0,1));
        }
    } else {
        if (str2[0]=='-') {
            str=SUB_INT(str1,str2.erase(0,1));
        } else { //把兩個整數對齊,短整數前面加0補齊
            string::size_type L1,L2;
            int i;
            L1=str1.size();
            L2=str2.size();
            if (L1<L2) {
                for (i=1;i<=L2-L1;i++) str1="0"+str1;
            } else {
                for (i=1;i<=L1-L2;i++) str2="0"+str2;
            }
            int int1=0,int2=0; //int2 記錄進位
            for (i=str1.size()-1;i>=0;i--) {
                int1=(int(str1[i])-'0'+int(str2[i])-'0'+int2)%10;
                int2=(int(str1[i])-'0'+int(str2[i])-'0'+int2)/10;
                str=char(int1+'0')+str;
            }
            if (int2!=0) str=char(int2+'0')+str;
        }
    }
    //運算后處理符號位
    if ((sign==-1)&&(str[0]!='0')) str="-"+str;
    return str;
}
string SUB_INT(string str1,string str2) {//高精度減法
    int sign=1; //sign 為符號位
    string str;
    int i,j;
    if (str2[0]=='-') {
        str=ADD_INT(str1,str2.erase(0,1));
    } else {
        int res=compare(str1,str2);
        if (res==0) return "0";
        if (res<0) {
            sign=-1;
            string temp =str1;
            str1=str2;
            str2=temp;
        }
        string::size_type tempint;
        tempint=str1.size()-str2.size();
        for (i=str2.size()-1;i>=0;i--) {
            if (str1[i+tempint]<str2[i]) {
                j=1;
                while (1) {//zhao4zhong1添加
                    if (str1[i+tempint-j]=='0') {
                        str1[i+tempint-j]='9';
                        j++;
                    } else {
                        str1[i+tempint-j]=char(int(str1[i+tempint-j])-1);
                        break;
                    }
                }
                str=char(str1[i+tempint]-str2[i]+':')+str;
            } else {
                str=char(str1[i+tempint]-str2[i]+'0')+str;
            }
        }
        for (i=tempint-1;i>=0;i--) str=str1[i]+str;
    }
    //去除結果中多余的前導0
    str.erase(0,str.find_first_not_of('0'));
    if (str.empty()) str="0";
    if ((sign==-1) && (str[0]!='0')) str ="-"+str;
    return str;
}
string MUL_INT(string str1,string str2) {//高精度乘法
    int sign=1; //sign 為符號位
    string str;
    if (str1[0]=='-') {
        sign*=-1;
        str1 =str1.erase(0,1);
    }
    if (str2[0]=='-') {
        sign*=-1;
        str2 =str2.erase(0,1);
    }
    int i,j;
    string::size_type L1,L2;
    L1=str1.size();
    L2=str2.size();
    for (i=L2-1;i>=0;i--) { //模擬手工乘法豎式
        string tempstr;
        int int1=0,int2=0,int3=int(str2[i])-'0';
        if (int3!=0) {
            for (j=1;j<=(int)(L2-1-i);j++) tempstr="0"+tempstr;
            for (j=L1-1;j>=0;j--) {
                int1=(int3*(int(str1[j])-'0')+int2)%10;
                int2=(int3*(int(str1[j])-'0')+int2)/10;
                tempstr=char(int1+'0')+tempstr;
            }
            if (int2!=0) tempstr=char(int2+'0')+tempstr;
        }
        str=ADD_INT(str,tempstr);
    }
    //去除結果中的前導0
    str.erase(0,str.find_first_not_of('0'));
    if (str.empty()) str="0";
    if ((sign==-1) && (str[0]!='0')) str="-"+str;
    return str;
}
string DIVIDE_INT(string str1,string str2,int flag) {//高精度除法。flag==1時,回傳商; flag==0時,回傳余數
    string quotient,residue; //定義商和余數
    int sign1=1,sign2=1;
    if (str2 == "0") {  //判斷除數是否為0
        quotient= "ERROR!";
        residue = "ERROR!";
        if (flag==1) return quotient;
        else         return residue ;
    }
    if (str1=="0") { //判斷被除數是否為0
        quotient="0";
        residue ="0";
    }
    if (str1[0]=='-') {
        str1   = str1.erase(0,1);
        sign1 *= -1;
        sign2  = -1;
    }
    if (str2[0]=='-') {
        str2   = str2.erase(0,1);
        sign1 *= -1;
    }
    int res=compare(str1,str2);
    if (res<0) {
        quotient="0";
        residue =str1;
    } else if (res == 0) {
        quotient="1";
        residue ="0";
    } else {
        string::size_type L1,L2;
        L1=str1.size();
        L2=str2.size();
        string tempstr;
        tempstr.append(str1,0,L2-1);
        for (int i=L2-1;i<L1;i++) { //模擬手工除法豎式
            tempstr=tempstr+str1[i];
            tempstr.erase(0,tempstr.find_first_not_of('0'));//zhao4zhong1添加
            if (tempstr.empty()) tempstr="0";//zhao4zhong1添加
            for (char ch='9';ch>='0';ch--) { //試商
                string str;
                str=str+ch;
                if (compare(MUL_INT(str2,str),tempstr)<=0) {
                    quotient=quotient+ch;
                    tempstr =SUB_INT(tempstr,MUL_INT(str2,str));
                    break;
                }
            }
        }
        residue=tempstr;
    }
    //去除結果中的前導0
    quotient.erase(0,quotient.find_first_not_of('0'));
    if (quotient.empty()) quotient="0";
    if ((sign1==-1)&&(quotient[0]!='0')) quotient="-"+quotient;
    if ((sign2==-1)&&(residue [0]!='0')) residue ="-"+residue ;
    if (flag==1) return quotient;
    else         return residue ;
}
string DIV_INT(string str1,string str2) {//高精度除法,回傳商
    return DIVIDE_INT(str1,str2,1);
}
string MOD_INT(string str1,string str2) {//高精度除法,回傳余數
    return DIVIDE_INT(str1,str2,0);
}
int main() {
    string s1,s2,s3,s4;
    int i;

    s4="0";

    s3="1";
    for (i=0;i<1002;i++) s3+="0";

    s1="1";
    s2="1";

    s4=ADD_INT(s4,DIV_INT(s3,s1));
    s4=ADD_INT(s4,DIV_INT(s3,s1));

    for (i=2;i<451;i++) {//因為450!是一個1001位數
        s2=ADD_INT(s2,string("1"));
        s1=MUL_INT(s1,s2);
        s4=ADD_INT(s4,DIV_INT(s3,s1));
    }

    cout<<s4<<endl;

    return(0);
}
//271828182845904523536028747135266249775724709369995957496696762772407663035354759457138217852516642742746639193200305992
//181741359662904357290033429526059563073813232862794349076323382988075319525101901157383418793070215408914993488416750924
//476146066808226480016847741185374234544243710753907774499206955170276183860626133138458300075204493382656029760673711320
//070932870912744374704723069697720931014169283681902551510865746377211125238978442505695369677078544996996794686445490598
//793163688923009879312773617821542499922957635148220826989519366803318252886939849646510582093923982948879332036250944311
//730123819706841614039701983767932068328237646480429531180232878250981945581530175671736133206981125099618188159304169035
//159888851934580727386673858942287922849989208680582574927961048419844436346324496848756023362482704197862320900216099023
//530436994184914631409343173814364054625315209618369088870701676839642437814059271456354906130310720851038375051011574770
//4171898610687396965521267154688957035035174

uj5u.com熱心網友回復:

近視→近似

uj5u.com熱心網友回復:

參考 9 樓 zhao4zhong1 的回復:
近視→近似


果然“近視”,連小數點都沒添加上去……

uj5u.com熱心網友回復:

參考 10 樓 Chen8013 的回復:
Quote: 參考 9 樓 zhao4zhong1 的回復:

近視→近似


果然“近視”,連小數點都沒添加上去……

整數運算模擬定點小數運算,小數點位置按照事先約定位置自己腦補點上吧。

uj5u.com熱心網友回復:

貌似我又開了個壞頭,其實樓主的問題一看就是課堂上的小練習啦。我給的例子也是給他一個簡單又能在同學面前嘚瑟的方案。

uj5u.com熱心網友回復:

Private Sub Command1_Click()
    Dim arr_1() As Long, arr_2() As Long, arr_3() As Long, arr_4() As Long, m As Integer, i As Integer
    m = 175
    ReDim arr_1(m)
    ReDim arr_2(m)
    ReDim arr_3(m)
    ReDim arr_4(m)
    
    arr_1(1) = 1
    arr_1(2) = 1
    
    For i = 3 To m
        arr_1(i) = arr_1(i - 1) + arr_1(i - 2)
        arr_2(i) = arr_2(i - 1) + arr_2(i - 2)
        arr_3(i) = arr_3(i - 1) + arr_3(i - 2)
        arr_4(i) = arr_4(i - 1) + arr_4(i - 2)
        
        If arr_1(i) > 1000000000 Then
            arr_1(i) = arr_1(i) - 1000000000
            arr_2(i) = arr_2(i) + 1
        End If
        If arr_2(i) > 1000000000 Then
            arr_2(i) = arr_2(i) - 1000000000
            arr_3(i) = arr_3(i) + 1
        End If
        If arr_3(i) > 1000000000 Then
            arr_3(i) = arr_3(i) - 1000000000
            arr_4(i) = arr_4(i) + 1
        End If
    Next i
      
    Text1.Text = Format(arr_4(m), "## ### ### ### ") & Format(arr_3(m), "000 000 000 ") & _
                Format(arr_2(m), "000 000 000 ") & Format(arr_1(m), "000 000 000")
End Sub

轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/45257.html

標籤:VB基礎類

上一篇:如何獲取網頁中的表格資料,表格由js控制

下一篇:VB中的InStr以及len函式用法疑問

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • Git本地庫既關聯GitHub又關聯Gitee

    創建代碼倉庫 使用gitee舉例(github和gitee差不多) 1.在gitee右上角點擊+,選擇新建倉庫 ? 2.選擇填寫倉庫資訊,然后進行創建 ? 3.服務端已經準備好了,本地開始作準備 (1)Git 全域設定 git config --global user.name "成鈺" git c ......

    uj5u.com 2020-09-10 05:04:14 more
  • CODING DevOps 代碼質量實戰系列第二課,相約周三

    隨著 ToB(企業服務)的興起和 ToC(消費互聯網)產品進入成熟期,線上故障帶來的損失越來越大,代碼質量越來越重要,而「質量內建」正是 DevOps 核心理念之一。**《DevOps 代碼質量實戰(PHP 版)》**為 CODING DevOps 代碼質量實戰系列的第二課,同時也是本系列的 PHP ......

    uj5u.com 2020-09-10 05:07:43 more
  • 推薦Scrum書籍

    推薦Scrum書籍 直接上干貨,推薦書籍清單如下(推薦有順序的哦) Scrum指南 Scrum精髓 Scrum敏捷軟體開發 Scrum捷徑 硝煙中的Scrum和XP : 我們如何實施Scrum 敏捷軟體開發:Scrum實戰指南 Scrum要素 大規模Scrum:大規模敏捷組織的設計 用戶故事地圖 用 ......

    uj5u.com 2020-09-10 05:07:45 more
  • CODING DevOps 代碼質量實戰系列最后一課,周四發車

    隨著 ToB(企業服務)的興起和 ToC(消費互聯網)產品進入成熟期,線上故障帶來的損失越來越大,代碼質量越來越重要,而「質量內建」正是 DevOps 核心理念之一。 **《DevOps 代碼質量實戰(Java 版)》**為 CODING DevOps 代碼質量實戰系列的最后一課,同時也是本系列的 ......

    uj5u.com 2020-09-10 05:07:52 more
  • 敏捷軟體工程實踐書籍

    Scrum轉型想要做好,第一步先了解并真正落實Scrum,那么我推薦的Scrum書籍是要看懂并實踐的。第二步是團隊的工程實踐要做扎實。 下面推薦工程實踐書單: 重構:改善既有代碼的設計 決議極限編程 : 擁抱變化 代碼整潔代碼 程式員的職業素養 修改代碼的藝術 撰寫可讀代碼的藝術 測驗驅動開發 : ......

    uj5u.com 2020-09-10 05:07:55 more
  • Jenkins+svn+nginx實作windows環境自動部署vue前端專案

    前面文章介紹了Jenkins+svn+tomcat實作自動化部署,現在終于有空抽時間出來寫下Jenkins+svn+nginx實作自動部署vue前端專案。 jenkins的安裝和配置已經在前面文章進行介紹,下面介紹實作vue前端專案需要進行的哪些額外的步驟。 注意:在安裝jenkins和nginx的 ......

    uj5u.com 2020-09-10 05:08:49 more
  • CODING DevOps 微服務專案實戰系列第一課,明天等你

    CODING DevOps 微服務專案實戰系列第一課**《DevOps 微服務專案實戰:DevOps 初體驗》**將由 CODING DevOps 開發工程師 王寬老師 向大家介紹 DevOps 的基本理念,并探討為什么現代開發活動需要 DevOps,同時將以 eShopOnContainers 項 ......

    uj5u.com 2020-09-10 05:09:14 more
  • CODING DevOps 微服務專案實戰系列第二課來啦!

    近年來,工程專案的結構越來越復雜,需要接入合適的持續集成流水線形式,才能滿足更多變的需求,那么如何優雅地使用 CI 能力提升生產效率呢?CODING DevOps 微服務專案實戰系列第二課 《DevOps 微服務專案實戰:CI 進階用法》 將由 CODING DevOps 全堆疊工程師 何晨哲老師 向 ......

    uj5u.com 2020-09-10 05:09:33 more
  • CODING DevOps 微服務專案實戰系列最后一課,周四開講!

    隨著軟體工程越來越復雜化,如何在 Kubernetes 集群進行灰度發布成為了生產部署的”必修課“,而如何實作安全可控、自動化的灰度發布也成為了持續部署重點關注的問題。CODING DevOps 微服務專案實戰系列最后一課:**《DevOps 微服務專案實戰:基于 Nginx-ingress 的自動 ......

    uj5u.com 2020-09-10 05:10:00 more
  • CODING 儀表盤功能正式推出,實作作業資料可視化!

    CODING 儀表盤功能現已正式推出!該功能旨在用一張張統計卡片的形式,統計并展示使用 CODING 中所產生的資料。這意味著無需額外的設定,就可以收集歸納寶貴的作業資料并予之量化分析。這些海量的資料皆會以圖表或串列的方式躍然紙上,方便團隊成員隨時查看各專案的進度、狀態和指標,云端協作迎來真正意義上 ......

    uj5u.com 2020-09-10 05:11:01 more
最新发布
  • windows系統git使用ssh方式和gitee/github進行同步

    使用git來clone專案有兩種方式:HTTPS和SSH:
    HTTPS:不管是誰,拿到url隨便clone,但是在push的時候需要驗證用戶名和密碼;
    SSH:clone的專案你必須是擁有者或者管理員,而且需要在clone前添加SSH Key。SSH 在push的時候,是不需要輸入用戶名的,如果配置... ......

    uj5u.com 2023-04-19 08:41:12 more
  • windows系統git使用ssh方式和gitee/github進行同步

    使用git來clone專案有兩種方式:HTTPS和SSH:
    HTTPS:不管是誰,拿到url隨便clone,但是在push的時候需要驗證用戶名和密碼;
    SSH:clone的專案你必須是擁有者或者管理員,而且需要在clone前添加SSH Key。SSH 在push的時候,是不需要輸入用戶名的,如果配置... ......

    uj5u.com 2023-04-19 08:35:34 more
  • 2023年農牧行業6大CRM系統、5大場景盤點

    在物聯網、大資料、云計算、人工智能、自動化技術等現代資訊技術蓬勃發展與逐步成熟的背景下,數字化正成為農牧行業供給側結構性變革與高質量發展的核心驅動因素。因此,改造和提升傳統農牧業、開拓創新現代智慧農牧業,加快推進農牧業的現代化、資訊化、數字化建設已成為農牧業發展的重要方向。 當下,企業數字化轉型已經 ......

    uj5u.com 2023-04-18 08:05:44 more
  • 2023年農牧行業6大CRM系統、5大場景盤點

    在物聯網、大資料、云計算、人工智能、自動化技術等現代資訊技術蓬勃發展與逐步成熟的背景下,數字化正成為農牧行業供給側結構性變革與高質量發展的核心驅動因素。因此,改造和提升傳統農牧業、開拓創新現代智慧農牧業,加快推進農牧業的現代化、資訊化、數字化建設已成為農牧業發展的重要方向。 當下,企業數字化轉型已經 ......

    uj5u.com 2023-04-18 08:00:18 more
  • 計算機組成原理—存盤器

    計算機組成原理—硬體結構 二、存盤器 1.概述 存盤器是計算機系統中的記憶設備,用來存放程式和資料 1.1存盤器的層次結構 快取-主存層次主要解決CPU和主存速度不匹配的問題,速度接近快取 主存-輔存層次主要解決存盤系統的容量問題,容量接近與價位接近于主存 2.主存盤器 2.1概述 主存與CPU的聯 ......

    uj5u.com 2023-04-17 08:20:31 more
  • 談一談我對協同開發的一些認識

    如今各互聯網公司普通都使用敏捷開發,采用小步快跑的形式來進行專案開發。如果是小專案或者小需求,那一個開發可能就搞定了。但對于電商等復雜的系統,其功能多,結構復雜,一個人肯定是搞不定的,所以都是很多人來共同開發維護。以我曾經待過的商城團隊為例,光是后端開發就有七十多人。 為了更好地開發這類大型系統,往 ......

    uj5u.com 2023-04-17 08:18:55 more
  • 專案管理PRINCE2核心知識點整理

    PRINCE2,即 PRoject IN Controlled Environment(受控環境中的專案)是一種結構化的專案管理方法論,由英國政府內閣商務部(OGC)推出,是英國專案管理標準。
    PRINCE2 作為一種開放的方法論,是一套結構化的專案管理流程,描述了如何以一種邏輯性的、有組織的方法,... ......

    uj5u.com 2023-04-17 08:18:51 more
  • 談一談我對協同開發的一些認識

    如今各互聯網公司普通都使用敏捷開發,采用小步快跑的形式來進行專案開發。如果是小專案或者小需求,那一個開發可能就搞定了。但對于電商等復雜的系統,其功能多,結構復雜,一個人肯定是搞不定的,所以都是很多人來共同開發維護。以我曾經待過的商城團隊為例,光是后端開發就有七十多人。 為了更好地開發這類大型系統,往 ......

    uj5u.com 2023-04-17 08:18:00 more
  • 專案管理PRINCE2核心知識點整理

    PRINCE2,即 PRoject IN Controlled Environment(受控環境中的專案)是一種結構化的專案管理方法論,由英國政府內閣商務部(OGC)推出,是英國專案管理標準。
    PRINCE2 作為一種開放的方法論,是一套結構化的專案管理流程,描述了如何以一種邏輯性的、有組織的方法,... ......

    uj5u.com 2023-04-17 08:17:55 more
  • 計算機組成原理—存盤器

    計算機組成原理—硬體結構 二、存盤器 1.概述 存盤器是計算機系統中的記憶設備,用來存放程式和資料 1.1存盤器的層次結構 快取-主存層次主要解決CPU和主存速度不匹配的問題,速度接近快取 主存-輔存層次主要解決存盤系統的容量問題,容量接近與價位接近于主存 2.主存盤器 2.1概述 主存與CPU的聯 ......

    uj5u.com 2023-04-17 08:12:06 more