. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
刷新 | 提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->基础知识
  管理员: assembly   [回复本贴] [收藏本贴] [管理本贴] [关闭窗口]
主题 : :  怎样熟悉位制之间的转换?  [待解决] 回复[ 6次 ]   点击[ 506次 ]  
lzs5732
[帖 主]   [ 发表时间:2008-02-29 23:20 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2008-02-29 19:24
《汇编语言》里面常有16位进和2进制的数(我看到第二章中段),有时根本就不知道是什么,脑子里只知道是数字和字母的结合体,但这结合体代表多少就不知道了。
有好方法的介绍下
mess
[第1楼]   [ 回复时间:2008-03-01 09:56 ]   [引用]   [回复]   [ top ] 
荣誉值:337
信誉值:0
注册日期:2008-01-01 17:48
我的建议是孰能生巧。
进制转换算是比较枯燥的,刚结束的时候确实很乱,一个f就代表15了,真是不适应。不过这些确是一定要会的,楼主可以把第二章多看两遍,尤其是涉及到进制转换的地方。真正转化的方法很简单,关键是要看多了熟练了才行。
crazyman
[第2楼]   [ 回复时间:2008-03-01 13:05 ]   [引用]   [回复]   [ top ] 
荣誉值:152
信誉值:3
注册日期:2008-01-24 21:26
16进制转2进制:
原则:每一位由4个二进制数据,一位一位的将16进制的数据表示成2进制的即可。比如说F107H,我们的转化如下
F—>1111 , 1->0001 , 0->0000 , 7->0111 ,然后从左到右将那些二进制数据联系在一起就得到了最终结果,即
F107H—>1111 0001 0000 0111 
2进制转16进制:
原则:将二进制数据,按从右到左的顺序,每次每四位,到了最左端不足四位的时候,可以用0补足,然后将取到的四位二进制计算成一个10进制数据,然后将该10进制数据换成16进制的数据。比如1011111010,转化过程如下:从右向左依次为,1010—>10->A(H),1111->15->F(H),0010(左边补了两个0)->2->2(H).最后将转成的16进制的数据,按照对应的顺序排好就行了.整个过程为10 1111 1010 ->2 15 10->2 F A (H),即2FA(H),即最后的结果。
lzs5732
[第3楼]   [ 回复时间:2008-03-01 14:33 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2008-02-29 19:24
呵呵
楼上的说得我有点冻又好似有点不懂
根据我的学习经验,这就是最要命的半桶水
qingqingziyin
[第4楼]   [ 回复时间:2008-03-01 18:14 ]   [引用]   [回复]   [ top ] 
荣誉值:13
信誉值:0
注册日期:2007-07-05 17:19
先把10进制弄明白,2进制和16进制和它除了进位的规则不一样,其余都一样。
10进制是逢10进1,例如1234,那么这个1234到底是多少呢?
1234=4×1+3×10+2×10×10+1*10×10×10=1234
再看1234H(最后的H代表这个数是十六进制,否则人家怎么知道它是10进制还是8进制还是16进制啊?),这个1234H到底是多少呢?
1234H=4*1+3*16+2*16*16+1*16*16*16=4660
再看1010B(最后的B代表这个数是2进制),这个1010B到底是多少呢?
1010B=0×1+1×2+0×2×2+1×2×2×2=10

至于二进制和十进制的转换问题,你可以研究一下,4位的2进制数,最小是多少?最大是多少?
最小是0000B,即0
最大是1111B,即15
可以看出0到15,恰好是1位16进制数的最小值和最大值。
所以你可以把一列2进制数4位4位的分割开,算出这4位转化成的16进制数是多少,而且肯定是4位二进制数正好转化成1位16进制数,肯定不会超出,想想为什么呢?
例如:1001010111B
<1>每4位一组分割:  10   0101   0111   B(2进制标志)
<2>分组转化成16进制:2    5     7      H(16进制)
即1001010111B转化为16进制为257H。
wdm
[第5楼]   [ 回复时间:2008-03-01 20:21 ]   [引用]   [回复]   [ top ] 
荣誉值:342
信誉值:0
注册日期:2007-12-06 10:21
2楼和4楼的内容合起来,就很具体,清晰了。
lzs5732
[第6楼]   [ 回复时间:2008-03-01 21:42 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2008-02-29 19:24
谢谢热心的各位哈
现在明白了。就差熟练了。
需要登录后才能回帖 -->> 请单击此处登录
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved