成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

計算機系統(tǒng)基礎實驗-定點數(shù)加減法的機器級表示-創(chuàng)新互聯(lián)

實驗序號:2 實驗名稱:定點數(shù)加減法的機器級表示
適用專業(yè):軟件工程 學 時 數(shù):2學時

成都創(chuàng)新互聯(lián)公司專注于天津企業(yè)網(wǎng)站建設,自適應網(wǎng)站建設,電子商務商城網(wǎng)站建設。天津網(wǎng)站建設公司,為天津等地區(qū)提供建站服務。全流程按需網(wǎng)站建設,專業(yè)設計,全程項目跟蹤,成都創(chuàng)新互聯(lián)公司專業(yè)和態(tài)度為您提供的服務一、實驗目的

1、掌握定點數(shù)加法的機器級表示。
2、掌握定點數(shù)減法的機器級表示。
3、掌握EFLAGS中4個牽涉到計算的標志位的計算方法。
4、掌握計算溢出的判定方法。

二、實驗要求

按照實驗題目的要求,編寫程序并上機調(diào)試

三、實驗設備、環(huán)境

計算機、Windows 7 、Visual C++ 6.0

四、實驗步驟及內(nèi)容

用C語言編寫二進制數(shù)運算模擬程序

1.編寫整數(shù)加減法器:
設在main中有如下數(shù)組:

char int1[5];
char int2[5];

編寫函數(shù)

int addsub(char int1[],char int2[],int flag,int m,int n);

當flag為0時表示加法運算,當flag為1時表示減法運算,做4位的加減法運算,返回4位結(jié)果。m和n分別是int1和int2的大小。在函數(shù)中必須要計算OF,CF,SF,ZF,并輸出4個值,根據(jù)值輸出是否產(chǎn)生了溢出,是哪一種溢出。

提示:
1.要注意到減法運算本質(zhì)仍然是做加法,只不過要將減數(shù)取補碼而已。
2.注意OF和CF并不只是判定最高位是否有進位
3.注意判定是否溢出必須要知道數(shù)是有符號還是無符號才行,加法器本身沒有能力判定這一點。

五、討論、思考題

1、為什么要用補碼來表示整數(shù)?
2、機器底層是如何判定溢出的?
3、為什么編譯器一定要知道數(shù)據(jù)的類型才能夠做計算?

#includeint addsub(char int1[], char int2[], int flag, int m, int n);

int main()
{char input[10];
    scanf("%s", input);
    char int1[5];
    char int2[5];
    for (int i = 0; i< 4; i++)
    {int1[i] = input[i] - '0';
        int2[i] = input[i + 5] - '0';
    }
    int flag = input[4]=='-'?1:0;
    addsub(int1, int2, flag, 4, 4);
    printf("結(jié)果:%d%d%d%d\n", int2[0], int2[1], int2[2], int2[3]);
    printf("ZF=%d,SF=%d,CF=%d,OF=%d",int1[0], int1[1], int1[2], int1[3]);
    return 0;
}

int addsub(char int1[], char int2[], int flag, int m, int n)
{if(flag) {for(int i = 0; i< 4; i++ ) int2[i] = !int2[i];
        for(int i = n - 1, carry = 1; ~i; i--) {int c = carry, b = int2[i];
            int2[i] = int2[i] ^ carry;
            carry = b & c;
            if(carry == 0) break;
        }
    }
    int carry[5] = {0}, res[4] = {0};
    for(int i = n - 1; ~i; i-- ) {int a = int1[i], b = int2[i], c = carry[i + 1];
        res[i] = a ^ b ^ c;
        carry[i] = (a & c) | (b & c) | (a & b);
    }
    int OF = 0, ZF = 0, SF = 0, CF = 0;
    CF = carry[0] ^ flag;
    SF = res[0];
    ZF = !(res[0] | res[1] | res[2] | res[3]);
    OF = carry[0] ^ carry[1];
    int1[0] = ZF, int1[1] = SF, int1[2] = CF, int1[3] = OF;
    for(int i = 0; i< 4; i++ ) int2[i] = res[i];
    return 0;
} 

在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

你是否還在尋找穩(wěn)定的海外服務器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機房具備T級流量清洗系統(tǒng)配攻擊溯源,準確流量調(diào)度確保服務器高可用性,企業(yè)級服務器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧

文章名稱:計算機系統(tǒng)基礎實驗-定點數(shù)加減法的機器級表示-創(chuàng)新互聯(lián)
本文路徑:http://jinyejixie.com/article42/jgoec.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版、移動網(wǎng)站建設、定制網(wǎng)站、網(wǎng)站建設、Google、全網(wǎng)營銷推廣

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)頁設計公司
宜丰县| 南充市| 苏尼特右旗| 宁陵县| 百色市| 高邑县| 仙游县| 兴海县| 沾益县| 洛隆县| 花莲市| 太原市| 山东| 临安市| 马山县| 樟树市| 饶河县| 突泉县| 贺兰县| 新邵县| 上杭县| 南和县| 潢川县| 喀喇| 奉化市| 汉阴县| 资兴市| 石景山区| 南溪县| 石泉县| 沽源县| 邹平县| 宜州市| 广河县| 营口市| 逊克县| 蛟河市| 洪泽县| 东山县| 江西省| 诏安县|