Here is a simple algorithm about 'decimal' to 'dexadecimal',and the implementation code:

 /*
Convert from decimal to binary,octonary and hexadecimal.
*/
package kju.decto; import kju.print.Printer;
public class DecimalTo {
public static String decToHex(int num) {
return transDec(num, 15, 4);
} public static String decToBinary(int num) {
return transDec(num, 1, 1);
} public static String decToOctonary(int num) {
return transDec(num, 7, 3);
} /*transform decimal to others.
num: the input decimal.
base: the value to be '&'(bitwise AND) operate with 'num' for each shift operation.
offset:the number to shift each time.
*/
private static String transDec(int num, int base, int offset) {
if(num == 0)
return "0";
char[] csRef = getHexTable();
char[] csStorage = new char[32]; //store the result(32 is the max length).
int pos = csStorage.length; //position to store in the 'scStorage'.
while(num != 0) {
int temp = num & base;
csStorage[--pos] = csRef[temp];
num >>>= offset;
}
return String.valueOf(csStorage, pos, csStorage.length - pos);
} //table that contains each item of hexadecimal letter.
private static char[] getHexTable() {
return new char[]{'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
} public static void main(String[] args) {
String result = decToHex(60);
Printer.println(result);
//prints:3C.
Printer.printHr();
result = decToBinary(-6);
Printer.println(result);
//prints:11111111111111111111111111111010.
Printer.printHr();
result = decToOctonary(30);
Printer.println(result);
//prints:36
}
}

Rre:  Some relevant operations.

decimal to hexadecimal,binary and octonary.的更多相关文章

  1. Converting from Decimal Notation to Binary Notation for Fractions

    COMPUTER ORGANIZATION AND ARCHITECTURE DESIGNING FOR PERFORMANCE NINTH EDITION Therefore, the conver ...

  2. Java开发笔记(六)特殊数字的表达

    之前的文章提到,Java语言不但支持大众熟知的十进制数,也支持计算机特有的二进制数.八进制数和十六进制数.可是在给数值变量赋值的时候,等号右边的数字明显属于十进制,那究竟要如何书写其它进制的数字呢?为 ...

  3. ES6学习笔记(三)——数值的扩展

    看到这条条目录有没有感觉很枯燥,觉得自己的工作中还用不到它所以实在没有耐心看下去,我也是最近得闲,逼自己静下心来去学习去总结,只有在别人浮躁的时候你能静下心来去学去看去总结,你才能进步.毕竟作为前端不 ...

  4. 史上最全NOIP初赛知识点

    CSP-J/S 第一轮知识点选讲 \(NOIP\)(全国青少年信息学奥林匹克竞赛)于2019年取消.取而代之的是由\(CCF\)推出的非专业级软件能力认证,也就是现在的\(CSP-J/S\).作为一名 ...

  5. 史上最全的CSP-J/S 第一轮知识点

    CSP-J/S 第一轮知识点选讲 \(NOIP\)(全国青少年信息学奥林匹克竞赛)于2019年取消.取而代之的是由\(CCF\)推出的非专业级软件能力认证,也就是现在的\(CSP-J/S\).作为一名 ...

  6. [转载]CSP-J/S 第一轮知识点选讲

    CSP-J/S 第一轮知识点选讲 转载自这里 感谢原博主的大力整理! 信息学史及基本知识 一.信息学及计算机史 计算机的顶级奖项:图灵奖.冯·诺依曼奖 图灵奖:由ACM(美国计算机协会)设立于1966 ...

  7. http2协议翻译(转)

    超文本传输协议版本 2 IETF HTTP2草案(draft-ietf-httpbis-http2-13) 摘要 本规范描述了一种优化的超文本传输协议(HTTP).HTTP/2通过引进报头字段压缩以及 ...

  8. java中String类型转换方法

    integer to String : int i = 42;String str = Integer.toString(i);orString str = "" + i doub ...

  9. C++——输入、输出和文件

    一.C++输入和输出概述 1.1.流和缓冲区 C++程序把输入和输出看作字节流.输入时,程序从输入流中抽取字节:输出时,程序将字节插入到输出流中.对于面相文本的程序,每个字节代表一个字符,更通俗地说, ...

随机推荐

  1. .froxlor 玩起

    其实,细想想, 这方面很有操作余地的哟.

  2. bzoj2734

    非常巧妙地题目对于一个数x列出这样的矩阵x 2x 4x 8x ……3x 6x 12x 24x ………………………………不难方案数就是求取数不相邻的方案数考虑矩阵宽不超过logn,所以可以用状压dp解决 ...

  3. Delphi使用NativeXml访问XML文件

    Delphi使用NativeXml访问XML文件 1.创建XML文件var Doc: TNativeXml;//声明上下文对象var filepath:string;//文件路径DOC:=TNativ ...

  4. [转]33 useful Keyboard Shortcuts for Run commond

    原文: http://www.shortcutworld.com/en/win/Run-command.html 1. Calling Run CommandWin + r               ...

  5. STM32F072B-DISCO 深入研究 中断系统

    STM32F072B-DISCO 是我认为性价比最高的一款CPU的demo系统,以前一直在用PIC的CPU但最近几年ST异军突起,几次课题查找芯片无一例外都是ST,像USB,CAN,ZIGBEE等,S ...

  6. Windows玩转Docker(一):安装

    Docker官网地址: http://www.docker.com/ 本文参照site: https://docs.docker.com/windows/ Docker 项目的目标是实现轻量级的操作系 ...

  7. (转载)关于having 1=1 和group by 爆表的思考和总结

    上次在网上看到一篇关于having 1=1 和group by 爆表注射的文章,看得我晕乎乎的,为了了解其根本原理,我稍微学习了下数据库知识,翻了下资料,但有些资料找不到,于是,开始发挥本天才的思维来 ...

  8. Linux process state codes

    Here are the different values that the s, stat and state output specifiers (header "STAT" ...

  9. C#中同时使用Lambda表达式和递归

    Func<object, int> RTFunc = (RTFuncRT) => { return (RTFuncRT as Func<object, int>)(RTF ...

  10. Intersecting Lines - POJ 1269(判断平面上两条直线的关系)

    分析:有三种关系,共线,平行,还有相交,共线和平行都可以使用叉积来进行判断(其实和斜率一样),相交需要解方程....在纸上比划比划就出来了....   代码如下: ================== ...