输入一个十进制整数,将其转换成十六进制数输出,并提取每一字节所表示的十六进制数值逐一输出。测试数据如下:

分析:从控制台输入一个十进制整数,将其转换成十六进制数输出,接着提取其4个字节。用到按位与运算符“&”、右移位运算符“>>”。

ps:“0x”是十六进制数的前缀。位(bit):度量数据的最小单位,表示一位二进制信息;字节(byte):由八位二进制数字组成(1 byte = 8 bit)。1个字节表示2位十六进制数。

新建一个Visual C# 控制台程序

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace _10_16_013
{class Program{static void Main(string[] args){/* 功能: 输入一个十进制整数,将其转换成十六进制数输出,并提取每一字节所表示的十六进制数值逐一输出* 补充:位(bit):度量数据的最小单位,表示一位二进制信息。*       字节(byte):由八位二进制数字组成(1 byte = 8 bit)。*/ Console.WriteLine("输入一个整数:");int Num = int.Parse(Console.ReadLine());// 从控制台输入一个十进制整数Console.WriteLine("{0}的十六进制形式为0x{1:X8}",Num,Num);// X8表示十六进制格式(大写),域宽8位,不足的左边填0int Hex = Num & 0x000000FF;// 数值与0xFF按位与运算Console.WriteLine("第1个字节为:0x{0:X2}",Hex);// X2表示十六进制格式(大写),域宽2位,不足的左边填0Hex = Num >> 8 & 0x000000FF;// 数值右移8位与0xFF按位与运算Console.WriteLine("第2个字节为:0x{0:X2}", Hex);// X2表示十六进制格式(大写),域宽2位,不足的左边填0Hex = Num >> 16 & 0x000000FF;// 数值右移8位与0xFF按位与运算Console.WriteLine("第3个字节为:0x{0:X2}", Hex);// X2表示十六进制格式(大写),域宽2位,不足的左边填0Hex = Num >> 24 & 0x000000FF;// 数值右移8位与0xFF按位与运算Console.WriteLine("第4个字节为:0x{0:X2}", Hex);// X2表示十六进制格式(大写),域宽2位,不足的左边填0}}
}

当输入123456789时,对应的十六进制数为0x075BCD15。

第1个字节为0x15,十进制为21。

右移8位后,对应的十六进制数为0x00075BCD。

第2个字节为0xCD,十进制为205。

右移16位后,对应的十六进制数为0x0000075B。

第3个字节为0x5B,十进制为91。

右移32位后,对应的十六进制数为0x00000007。

第4个字节为0x07,十进制为7。

对应的,当输入其他数据时,依然这样逐步分析。

转载于:https://www.cnblogs.com/Genesis2018/p/9079831.html

按字节提取整形数值(按位与运算符“”、右移位运算符“”)相关推荐

  1. c语言 高字节和高字节运算 低字节和低字节运算,C语言关系运算符和位运算符.ppt...

    <C语言关系运算符和位运算符.ppt>由会员分享,可在线阅读,更多相关<C语言关系运算符和位运算符.ppt(42页珍藏版)>请在装配图网上搜索. 1.第3章 关系运算符和位运算 ...

  2. swift:高级运算符(位运算符、溢出运算符、优先级和结合性、运算符重载函数)...

    swift:高级运算符 http://www.cocoachina.com/ios/20140612/8794.html 除了基本操作符中所讲的运算符,Swift还有许多复杂的高级运算符,包括了C语和 ...

  3. java位运算符取反_Java运算符之位运算符

    位运算符 尹成课程资料及演示(免费)(文末有资料链接) 位运算符是针对二进制数的每一位进行运算的符号,它是专门针对数字0和1进行操作的.接下来通过一张表来展示Java中的位运算符及其用法,如表1所示. ...

  4. 算术运算符、数学函数Math、数据类型转换、自增自减运算符、关系逻辑运算符、位运算符、括号及运算符级别

    文章目录 0.思维导图 1.算术运算符 2.数学函数与常量 3.数值类型之间的转换 (1)定义数据类型后自动转换 (2)二元运算时的自动转换 (3)强制类型转换 4.结合赋值与运算符 5.自增与自减运 ...

  5. 【笔记】Java的运算符(赋值运算符号、一元运算符、算术运算符、关系运算符、自增与自减运算符、逻辑运算符、括号运算符、位运算符、三元(三目)运算符)、表达式与语句:简洁表达式

    文章目录 一.运算符 1.赋值运算符号 2.一元运算符 3.算术运算符 4.关系运算符 5.自增与自减运算符 6.逻辑运算符 7.括号运算符 8.位运算符 左移位: 右移位: 9.三元(三目)运算符 ...

  6. MySQL运算符(逻辑运算符,比较运算符,位运算符)

    MySQL的运算符包括: 算术运算符 (类似数学中的 + - * /),在此基础上增加取余,也就是模运算,比较运算符,逻辑运算符,非符号运算符,位运算符. 本次重点讲解 逻辑运算符,和比较运算符,非符 ...

  7. C 运算符优先级——位运算符和逻辑运算符

    C 运算符优先级--位运算符和逻辑运算符   在进行C语言开发时,若单条表达式用到的运算符过多,需要注意运算符的优先级,否则无法得到欲得到的结果,最显而易见的便是"先算乘除,后算加减&quo ...

  8. Java移位运算符详解实例——左移位运算符、带符号的右移位运算符

    移位运算符也针对二进制的"位",它主要包括:左移位运算符(<<).右移位运算符(>>>).带符号的右移位运算符(>>). 1.左移运算符 ...

  9. java int 运算符_Java 位运算符和 int 类型的实现

    Java 位运算符和 int 类型的实现 其他运算符 # 算术运算符 +.-.*./.++i.i++.--i.i-- # 关系运算符 ==.!=.>.=.<= # 逻辑运算符 && ...

最新文章

  1. 字符串 内存 函数的介绍与模拟实现
  2. python数据分析常用包_python可视化数据分析常用图大集合(收藏)
  3. linux下SVN配置笔记(转)
  4. linux 内核将两个设备相关联,linux用户空间和内核空间交换数据
  5. minicom 串口信息过长分行显示
  6. sql中in和exist语句的区别?
  7. .netframewor划时代的系统:纪念Vista发布5周年
  8. c语言:最长对称子串(3种解决方案)
  9. java剪刀石头布游戏心得体会,基于JAVA的剪刀石头布游戏设计——Java课程设计报告_...
  10. 在VScode中使用opencv,配置好了以后无法找到opencv2/opencv.hpp的问题
  11. 软件结构体系与设计模式--1.软件设计模式概述
  12. 生产者消费者问题实验java,java实现:《操作系统实验一》:模拟管程解决解决生产者-消费者...
  13. 中国知网查重方法有哪些
  14. 刘宇凡:罗永浩的锤子情怀只能拿去喂狗
  15. CSS渐变背景看这一篇就够了
  16. 使用VIM是一种信仰
  17. SpringCloud实现微服务商城架构开源项目
  18. JSONObject、JSONArray
  19. Hadoop学习第一章:Hadoop概述
  20. php制作日历带节日实验目的,php制作日历

热门文章

  1. Python基础笔记(二) List、tuple、循环语句
  2. slider轮播插件的多种写法
  3. MikroTik RouterOS使用U盘安装提示FATAL ERROR: no CD-ROM found Press ENTER to reboot的问题解决...
  4. 百分点董事长苏萌:大数据落地有五大要素
  5. SWT里Slider和Scale的区别
  6. 解决父类加载iframe,src参数过大导致加载失败
  7. 车是银色好还是白色好?
  8. C# 6.0 的那些事
  9. Mathematica颜色系,你喜欢哪一个?
  10. libnids libnet