-
#include
using namespace std;
struct stack
int * num;
int top;
void init_stack(stack &stack)int[100];
delete ;
void push(stack &stack,int n);
int is_empty(stack &stack)return ? 1:0;
void pop(stack &stack)if(!is_empty(stack))
void f(int n)
if(n==0)
cout<<"十進位數為:"<>n;
f(n);return 0;
堆疊實現,給點!!
-
公式:整數二進位乘以 2 的冪,十進位二進位乘以 2 的負冪,然後依次相加。
1.將整數二進位轉換為十進位:首先用數字完成二進位數,如果第乙個數字為0,則表示為正整數,如果第乙個數字為1,則表示為負整數。
如果二進位後的第乙個數字是滿位數,如下圖所示,需要先取否定,然後轉換:
2.將小數點的二進位轉換為十進位:將二進位系統中四個小數位的對應值相乘得到的值(如下圖所示)就是轉換後的十進位。
-
十進位數、單個數字: .一千,一百,十個,乙個.
二進位數,分別為單個數字: .八、四、二、一......
剩下的部分,就看你了,你會慢慢摸索。
十進位數 8031 是: 8000000000000000000000000000000000000000000000000000
二進位數 1101 是: 1 8, 1 4, 0 two, 1 1 one, 即十進位 13。
-
將十進位十進位轉換為二進位十進位採用"乘以 2 並四捨五入,按順序"法律。 例如,方法如下:
1.整數運算。
1.將2乘以小數點後位數得到乘積:2*;
2.取出乘積1的整數部分,然後將剩餘的小數部分乘以2得到另乙個乘積,則為2*
3.然後取出乘積的整數部分,依此類推,然後; 此時,乘積的小數部分為零,0 或 1 是二進位的最後一位數字,不再倒計時。
2.整理一下。
按順序排列整數部分,首先取整數作為二進位小數位的高有效位,後取整數作為低有效位。 即。
-
1.整數二進位轉換。
是十進位的。 方法:從新增二進位數開始。
填寫數字,如果第乙個數字是 0,則表示它是正整數。
如果第乙個數字是 1,則表示負整數。
如果第乙個數字是0的正整數,則在完成位數後,將二進位中的數字乘以相應的值,然後將它們相加得到十進位。
如果二進位檔案後的第乙個數字是滿位數,則需要先反轉,然後再轉換。
2.將十進位二進位轉換為十進位。
方法:將二進位的位數乘以對應的值,然後加在一起,得到的值就是轉換後的十進位。
-
眾所周知,十進位數,單個數字是: .一千,一百,十個,乙個.
類似的二進位數,每個位都是: .八、四、二、一......
剩下的部分,就看你了,你會慢慢摸索。
十進位數 8031 是: 8000000000000000000000000000000000000000000000000000
二進位數 1101 是:1 8,1 4,0 2,1 1。 即十進位中的 13。
-
工作原理:
二進位到十進位:
將二進位轉換為十進位相對簡單,只要您遵守規則即可。 二進位數在數字的右下角標有腳印 2,十進位數加 10 也是如此。 規則如下:
將十進位轉換為二進位乙個整數轉換:
十進位整數到二進位的轉換可以用類似除法的形式得到,每次得到的商反覆除以2,求出二進位數的每一位。 表格如下:
十進位到二進位十進位的轉換:
將小數部分反覆乘以 2 到 2,得到的數字的整數部分為 1,則對應的位為 1,得到的整數部分為 0,則對應的位為 1。 表格如下:
將乙個數字的整數部分和小數部分轉換為二進位數,然後將兩個部分的二進位數合併得到乙個完整的二進位數。 首先,通過短除法,讓十進位數連續能被2整除,就可以得到多個餘數,最後將得到的餘數從下到上排列組合,得到轉換後的二進位數。
請注意,將十進位轉換為二進位時,整數和十進位的轉換方式不同。 ,請注意轉換的寫入方向。
希望它對您有所幫助,或者您及時採用它,謝謝!
-
各種基本系統之間的轉換方法:
1.將不同的進位數轉換為十進位數:按權重相加。
十進位的權重為 10; 二進位是右邊是 2; 十六進製的權重為 16; 八進位是權重為 8;
示例:110011(二進位數)= 1*2 5+1*2 4+0*2 3+0*2 2+1*2 1+1*2 0=32+16+2+1=51
1507(八進位數)= 1*8 3 + 5*8 2 + 0*8 1 + 7*8 0 = 839
2af5 (十六進製數) = 2*16 3 + a*16 2+ f*16 1 + 5*16 0 = 10997
2.將十進位數轉換為十進位數。
整數部分:除以餘額; 小數:乘以四捨五入。
示例:將十進位數 13 轉換為二進位數。
13 2=6 餘數 1
6 2=3 0
3 2=1 餘數 1
1 2=0 餘數 1
結果 : 1101
3.二進位到八進位。
從右到左轉動二進位數,以三人為一組,不足以彌補 0
示例:二進位數10110111011到八進位數:
其結果是 :2673
第四,二進位到十六進製。
將二進位數轉換為十六進製數的方法類似,從右到左,一組四位數,這不足以如上所述組成 0
其結果是:5bb,如上:
其結果是 :5bb
-
1.十進位和二進位之間的轉換 (1)十進位轉換為二進位,分為整數部分和小數部分 整數部分法:除以2餘數,即每次將整數部分除以2,餘數為位權重上的數字,商繼續除以2,餘數為前一位位權重上的數字, 這一步一直持續到商為 0,最後乙個讀數,從最後乙個餘數讀數開始,一直到第乙個餘數。下面是乙個示例:
示例:將十進位中的168轉換為二進位得到結果 將十進位中的168轉換為二進位,(10101000)2分析:第一步,將168除以2,商為84,餘數為0。
在第二步中,將商 84 除以 2,商 42 的餘數為 0。 在第三步中,將商 42 除以 2,商 21 的餘數為 0。 在第四步中,將商 21 除以 2,商 10 的餘數為 1。
在第五步中,將商 10 除以 2,商 5 的餘數為 0。 在第六步中,將商 5 除以 2,商 2 的餘數為 1。 在第七步中,將商 2 除以 2,商 1 的餘數為 0。
在第八步中,將商 1 除以 2,商 0 的餘數為 1。 第九步,讀數,因為最後一位數字是多次除以2後得到的,所以是最高位數,讀數位數是從最後乙個餘數向前讀的,即10101000 (2)小數部分法:乘以2取整數,即將小數部分乘以2, 然後取整數部分,剩下的小數部分繼續乘以2,再取整數部分,將剩下的小數部分乘以2,直到小數部分為零。
如果永遠不能為零,就像四捨五入十進位數一樣,在保留需要多少位小數時,根據下一位是0還是1來選擇,如果是零,就四捨五入,如果是1,就輸入一位。 換句話說,0 捨入。 讀數應從第乙個整數讀取到下乙個整數,如下所示
示例 1:轉換為二進位以獲得結果: 轉換為二進位 (分析:
第一步是乘以2得到,那麼整數部分為0,小數部分為; 第二步是將小數部分乘以2得到它,那麼整數部分為0,小數部分為; 第三步是將小數部分乘以2得到,則整數部分為1,小數部分為; 第四步,閱讀,從第一次閱讀開始,讀到最後一位數字,即。 十進位到二進位的方法,需要注意: 1)十進位到二進位,需要分成兩部分,分別是整數和十進位數2)轉換整數時,使用除以2的餘數法,轉換小數時,用乘以2取整數3)注意自己閱讀的方向因此, 從上面的方法,我們可以得出結論,十進位數被轉換為二進位 AS,或者十進位數被轉換為近似相等的二進位數。
3)二進位轉十進位 不除整數和小數部分的方法:按權重加法,即將二進位中每一位上的數字乘以權重,然後加到十進位數的總和中。示例:將二進位數轉換為十進位數。
1.二進位 1000 替換為 16。
用8421的轉換方法,即從左到右,8*1+4*0+2*0+1*0=0x8,這是所有十六進製到二進位、位到位對齊轉換的通用轉換方法,分別乘以8421,然後加起來。 如果二進位數。 >>>More