zz2679493
三十而立
級別: 略有小成
|
有沒有什么好辦法,把紅框里面的數(shù)據(jù)轉(zhuǎn)移到雙字?jǐn)?shù)據(jù)寄存器,我想的土辦法用K1000,K100相乘相加 |
---|---|
|
楓落云端
施主,腳抬一下
級別: 略有小成
|
字符型全在低位,先把D104到D112的低位字符用BTOW 變成連續(xù)的字符串型的數(shù)字,再用字符轉(zhuǎn)浮點(diǎn)數(shù)指令EVAL轉(zhuǎn)成浮點(diǎn)數(shù)11.9522 |
---|---|
|
tkggtdkjpl
工欲善其事,必先利其器!
級別: 網(wǎng)絡(luò)英雄
|
要先判斷是正是負(fù),是不是0,排除后在處理! |
|
---|---|---|
|
zz2679493
三十而立
級別: 略有小成
|
一樓的方法試了一下,EVAL轉(zhuǎn)之后,后面的數(shù)據(jù)一直為零,可能沒試對,我再試試,感謝提供思路 |
---|---|
|
菜鳥入行
級別: 論壇先鋒
|
D1 是16位的 MUL D1 K1 D10 后,變32位的 |
|
---|---|---|
|
楓落云端
施主,腳抬一下
級別: 略有小成
|
圖片:
根據(jù)樓主圖片上的數(shù)據(jù)模擬了一份,完全可以得出正確的浮點(diǎn)數(shù)。上圖為證。另外多一句,EVAL可以連帶符號一起給轉(zhuǎn)成正確的浮點(diǎn)數(shù)。比如字符串為"-011.952" |
---|---|
|
楓落云端
施主,腳抬一下
級別: 略有小成
|
圖片:
字符串負(fù)數(shù)情況下轉(zhuǎn)為浮點(diǎn)數(shù) |
---|---|
|
zz2679493
三十而立
級別: 略有小成
|
感謝一樓,我一開始按VAL的格式,怪不得數(shù)據(jù)一直都為零 剛用EVAL指令也報(bào)錯(cuò),要32位才行,這個(gè)我再研究下,十分感謝,這樣兩個(gè)指令就夠了,省了一大段基礎(chǔ)指令 |
---|---|
|
楓落云端
施主,腳抬一下
級別: 略有小成
|
EVAL指令因?yàn)槭菍ψ址僮,所以使用的時(shí)候一定要特別注意。EVAL所取的寄存器不能為空值,也不能是非正常數(shù)字表達(dá)方式的字符,比如出現(xiàn)ABCDEFG等一些不是數(shù)字字符的數(shù)據(jù)。不然CPU必定會報(bào)錯(cuò) |
---|---|
|
zz2679493
三十而立
級別: 略有小成
|
指令說明書上對EVAL的介紹里,沒有16位的指令,一樓你是怎么打出來的 [upload=2] |
---|---|
|