按字节提取整形数值(按位与运算符“”、右移位运算符“”)
输入一个十进制整数,将其转换成十六进制数输出,并提取每一字节所表示的十六进制数值逐一输出。测试数据如下:
分析:从控制台输入一个十进制整数,将其转换成十六进制数输出,接着提取其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
按字节提取整形数值(按位与运算符“”、右移位运算符“”)相关推荐
- c语言 高字节和高字节运算 低字节和低字节运算,C语言关系运算符和位运算符.ppt...
<C语言关系运算符和位运算符.ppt>由会员分享,可在线阅读,更多相关<C语言关系运算符和位运算符.ppt(42页珍藏版)>请在装配图网上搜索. 1.第3章 关系运算符和位运算 ...
- swift:高级运算符(位运算符、溢出运算符、优先级和结合性、运算符重载函数)...
swift:高级运算符 http://www.cocoachina.com/ios/20140612/8794.html 除了基本操作符中所讲的运算符,Swift还有许多复杂的高级运算符,包括了C语和 ...
- java位运算符取反_Java运算符之位运算符
位运算符 尹成课程资料及演示(免费)(文末有资料链接) 位运算符是针对二进制数的每一位进行运算的符号,它是专门针对数字0和1进行操作的.接下来通过一张表来展示Java中的位运算符及其用法,如表1所示. ...
- 算术运算符、数学函数Math、数据类型转换、自增自减运算符、关系逻辑运算符、位运算符、括号及运算符级别
文章目录 0.思维导图 1.算术运算符 2.数学函数与常量 3.数值类型之间的转换 (1)定义数据类型后自动转换 (2)二元运算时的自动转换 (3)强制类型转换 4.结合赋值与运算符 5.自增与自减运 ...
- 【笔记】Java的运算符(赋值运算符号、一元运算符、算术运算符、关系运算符、自增与自减运算符、逻辑运算符、括号运算符、位运算符、三元(三目)运算符)、表达式与语句:简洁表达式
文章目录 一.运算符 1.赋值运算符号 2.一元运算符 3.算术运算符 4.关系运算符 5.自增与自减运算符 6.逻辑运算符 7.括号运算符 8.位运算符 左移位: 右移位: 9.三元(三目)运算符 ...
- MySQL运算符(逻辑运算符,比较运算符,位运算符)
MySQL的运算符包括: 算术运算符 (类似数学中的 + - * /),在此基础上增加取余,也就是模运算,比较运算符,逻辑运算符,非符号运算符,位运算符. 本次重点讲解 逻辑运算符,和比较运算符,非符 ...
- C 运算符优先级——位运算符和逻辑运算符
C 运算符优先级--位运算符和逻辑运算符 在进行C语言开发时,若单条表达式用到的运算符过多,需要注意运算符的优先级,否则无法得到欲得到的结果,最显而易见的便是"先算乘除,后算加减&quo ...
- Java移位运算符详解实例——左移位运算符、带符号的右移位运算符
移位运算符也针对二进制的"位",它主要包括:左移位运算符(<<).右移位运算符(>>>).带符号的右移位运算符(>>). 1.左移运算符 ...
- java int 运算符_Java 位运算符和 int 类型的实现
Java 位运算符和 int 类型的实现 其他运算符 # 算术运算符 +.-.*./.++i.i++.--i.i-- # 关系运算符 ==.!=.>.=.<= # 逻辑运算符 && ...
最新文章
- 字符串 内存 函数的介绍与模拟实现
- python数据分析常用包_python可视化数据分析常用图大集合(收藏)
- linux下SVN配置笔记(转)
- linux 内核将两个设备相关联,linux用户空间和内核空间交换数据
- minicom 串口信息过长分行显示
- sql中in和exist语句的区别?
- .netframewor划时代的系统:纪念Vista发布5周年
- c语言:最长对称子串(3种解决方案)
- java剪刀石头布游戏心得体会,基于JAVA的剪刀石头布游戏设计——Java课程设计报告_...
- 在VScode中使用opencv,配置好了以后无法找到opencv2/opencv.hpp的问题
- 软件结构体系与设计模式--1.软件设计模式概述
- 生产者消费者问题实验java,java实现:《操作系统实验一》:模拟管程解决解决生产者-消费者...
- 中国知网查重方法有哪些
- 刘宇凡:罗永浩的锤子情怀只能拿去喂狗
- CSS渐变背景看这一篇就够了
- 使用VIM是一种信仰
- SpringCloud实现微服务商城架构开源项目
- JSONObject、JSONArray
- Hadoop学习第一章:Hadoop概述
- php制作日历带节日实验目的,php制作日历
热门文章
- Python基础笔记(二) List、tuple、循环语句
- slider轮播插件的多种写法
- MikroTik RouterOS使用U盘安装提示FATAL ERROR: no CD-ROM found Press ENTER to reboot的问题解决...
- 百分点董事长苏萌:大数据落地有五大要素
- SWT里Slider和Scale的区别
- 解决父类加载iframe,src参数过大导致加载失败
- 车是银色好还是白色好?
- C# 6.0 的那些事
- Mathematica颜色系,你喜欢哪一个?
- libnids libnet