54 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			54 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
---
 | 
						||
title: Converting from Decimal to Binary
 | 
						||
localeTitle: 从十进制转换为二进制
 | 
						||
---
 | 
						||
## 从十进制转换为二进制
 | 
						||
 | 
						||
您可以使用余数将十进制数转换为二进制数。
 | 
						||
 | 
						||
### 一般方法
 | 
						||
 | 
						||
1)将原始十进制数除以2并记录商和余数。 2)重复第一步,用你找到的最后一个商替换原始十进制数,直到得到一个等于0的商。 3)将你记录的最后一个余数作为你的MSB(最高位)和你记录的第一个余数作为你的LSB(最低有效位)。记下与生成它们的顺序相反的余数。
 | 
						||
 | 
						||
### 例子
 | 
						||
 | 
						||
将十进制数30转换为二进制数。
 | 
						||
```
 | 
						||
30 / 2 = 15 r 0 
 | 
						||
 15 / 2 = 7 r 1 
 | 
						||
 7 / 2 = 3 r 1 
 | 
						||
 3 / 2 = 1 r 1 
 | 
						||
 1 / 2 = 0 r 1 
 | 
						||
 
 | 
						||
 Writing out the remainders bottom to top gives you the bit pattern: 
 | 
						||
 
 | 
						||
 11110 
 | 
						||
 
 | 
						||
 Checking your answer by converting the binary number back to decimal: 
 | 
						||
 
 | 
						||
 (1*2^4)+(1*2^3)+(1*2^2)+(1*2^1)+(0*2^0) = 30 
 | 
						||
 
 | 
						||
 So your answer is correct. 
 | 
						||
```
 | 
						||
 | 
						||
将十进制数116转换为二进制数。
 | 
						||
```
 | 
						||
116 / 2 = 58 r 0 
 | 
						||
 58 / 2 = 29 r 0 
 | 
						||
 29 / 2 = 14 r 1 
 | 
						||
 14 / 2 = 7 r 0 
 | 
						||
 7 / 2 = 3 r 1 
 | 
						||
 3 / 2 = 1 r 1 
 | 
						||
 1 / 2 = 0 r 1 
 | 
						||
 
 | 
						||
 Writing out the remainders bottom to top gives you the bit pattern: 
 | 
						||
 
 | 
						||
 1110100 
 | 
						||
 
 | 
						||
 Checking your answer by converting the binary number back to decimal: 
 | 
						||
 
 | 
						||
 (1*2^6)+(1*2^5)+(1*2^4)+(0*2^3)+(1*2^2)+(0*2^1)+(0*2^0) = 116 
 | 
						||
 
 | 
						||
 So your answer is correct. 
 | 
						||
 | 
						||
``` |