| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 705 人关注过本帖
标题:已知2的n次方的值,如何求n?
只看楼主 加入收藏
ycxdtdz
Rank: 1
等 级:新手上路
帖 子:82
专家分:0
注 册:2011-5-31
结帖率:81.82%
收藏
已结贴  问题点数:0 回复次数:3 
已知2的n次方的值,如何求n?
已知2的n次方的值,如何求n?
搜索更多相关主题的帖子: 如何 
2011-07-15 13:57
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:5 
1 n是个整数呗 从零开始挨个试

2   n =lg(2^n)/lg2 也就是用对数

3   2^5=32=100000B 2^10=10000000000B 2^1=10B 看出来了?

欢迎补充
2011-07-15 19:25
ansic
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:恍惚窈冥
等 级:城市猎人
帖 子:1543
专家分:5367
注 册:2011-2-15
收藏
得分:5 
根据2的N次方二进制码里只有一个1来通过循环右移与1比较测试。
程序代码:
        
        mov ax,1024 ;假如2的n次方是1024,
        mov cx,16   ;循环移动次数
        mov bx,0    ;计数器
s:
        inc bx
        rol ax,1    ;循环右移
        push ax     ;保存
        and ax,1    ;与1比较
        cmp ax,1
        jz ok       ;是则退出
        pop ax      ;否则继续
        jmp s
ok:
        sub bx,16   ;结果在bx里
        neg bx

善人者,不善人之师;不善人者,善人之资。不贵其师,不爱其资,虽智大迷。
2011-07-16 22:35
色狼SL
Rank: 2
等 级:论坛游民
帖 子:5
专家分:21
注 册:2011-7-24
收藏
得分:0 
谢谢  3楼   
2011-07-24 18:26
快速回复:已知2的n次方的值,如何求n?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.039879 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved