位操作

时间限制: 8000ms 内存限制: 65535KB

通过次数: 2总提交次数: 2

问题描述
假设你工作在一个32位的机器上,你需要将某一个外设寄存器的第X位设置成0(最低位为第0位,最高位为第31位),将第Y位开始的连续三位设置成110(从高位到低位的顺序),而其他位保持不变。对给定的寄存器值R,及X,Y,编程计算更改后的寄存器值R。
输入描述
仅一行,包括R,X,Y,以逗号","分隔,R为16进制表示的32位整数,X,Y在0-31之间且Y>=3,(Y-X)的绝对值>=3,保证两次置位不会重合
输出描述
更改后的寄存器值R(16进制输出)
样例输入
12345678,0,3

样例输出
1234567c

来源
POJ

问题分析:(略)

这个问题和《POJ3748 位操作【位运算+STL】》是同一个问题,代码拿过来用就AC了。

程序说明:参见参考链接。

参考链接:POJ3748 位操作【位运算+STL】

题记:程序做多了,不定哪天遇见似曾相识的。

AC的C++程序如下:

/* POJ3748 位操作 */#include <iostream>
#include <bitset>
#include <stdio.h>using namespace std;int main()
{int r, x, y;while(scanf("%x,%d,%d", &r, &x, &y ) != EOF) {bitset<32> bitop(r);bitop.set(x, 0) ;bitop.set(y, 1) ;bitop.set(y - 1, 1) ;bitop.set(y - 2, 0) ;printf("%x\n", (unsigned int)bitop.to_ulong()) ;}return 0;
}

AC的C语言程序如下:

    /* POJ3748 位操作 */  #include <stdio.h>  int main(void)  {  int r, x, y;  while(scanf("%x,%d,%d", &r, &x, &y ) != EOF) {  r &= ~(1 << x);  r |= (1 << (y-1)) | (1 << y);  r &= ~(1 << (y-2));  printf("%x\n", r);  }  return 0;  }  

NUC1419 位操作【位运算+STL】相关推荐

  1. POJ3748 位操作【位运算+STL】

    位操作 Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 9433   Accepted: 3796 Description 假 ...

  2. Bailian3718 位操作练习【位运算】

    位操作练习 总时间限制: 1000ms 内存限制: 65536kB 描述 给出两个不大于65535的非负整数,判断其中一个的16位二进制表示形式,是否能由另一个的16位二进制表示形式经过循环左移若干位 ...

  3. kotlin位操作和位运算

    一.位操作: shl(bits) – 左移位 (Java's <<) shr(bits) – 右移位 (Java's >>) ushr(bits) – 无符号右移位 (Java ...

  4. c语言结构体的位操作,C语言之路---结构体、位运算及预处理命令

    一.结构体 1).概念 结构体是一种集合,它里面包含了多个变量或数组,它们的类型可以相同,也可以不同,每个这样的变量或数组都称为结构体的成员(Member). 结构体也是一种数据类型,它由程序员自己定 ...

  5. 常见位操作及运算应用举例:1,C语言中位运算符异或“∧”的作用​​​​​​​2,异或运算的作用3,(与运算)、|(或运算)、^(异或运算)

    1 C语言中位运算符异或"∧"的作用: 异或运算符∧也称XOR运算符.它的规则是若参加运算的两个二进位同号,则结果为0(假):异号则为1(真).即0∧0=0,0∧1=1,1∧1=0 ...

  6. C/C++位操作、位运算

    在C语言中,可以单独操控变量的位(bit),一般高级语言不会处理这级别的细节,C在提供高级语言便利的同时,还能为汇编语言所保留的级别上工作,这使其成为编写设备驱动程序和嵌入式代码的首选语言. 目录 二 ...

  7. python中不同进制的整数之间可以直接运算_Python 进制转换、位运算

    一.进制转换 编程用十进制,十进制转换为二进制.八进制.十六进制 In [135]: bin(23) Out[135]: '0b10111' In [136]: oct(23) Out[136]: ' ...

  8. 位运算详解+竞赛常见用法总结

    目录 一.位运算详解 二.位运算应用 1.快速幂 2.给定一个数组A, 长度为n,求下面这段程序的值 3.数数字 4.数数字 2 5.nim博弈问题: 6.树状数组 7.判断一个数x是不是2的某次方 ...

  9. java double 位运算_JAVA位运算等运算符总结

    JAVA位运算等运算符总结 一.概述 运算符是一种"功能"符号,用以通知 Java 进行相关的运算. Java 语言中常用的运算符可分为如下几种:算术运算符 赋值运算符 比较运算符 ...

最新文章

  1. 对于电单车同学们提出的改动建议
  2. 架设nagios+rrdtool+pnp4nagios监控windows主机
  3. ITK:使用最小最大曲率流平滑RGB图像
  4. ArrayBlockingQueue原理分析-put方法
  5. Ajax,再生还是幻灭---好文推荐
  6. 模板:min-max容斥离散随机变量的几何分布(洛谷P3175:[HAOI2015]按位或)
  7. 服务器版Windows7系统,windows7服务器版本
  8. Oracle数据库表解锁语句
  9. 2017-3-23校内训练
  10. mysql 2.71828_Picasso 2.71828 用法
  11. Javascript + Servlet的鸿沟如何抹平以构建富客户端应用?[SOS]
  12. python中如何计算集合的长度_Python如何计算序列长度 python dataframe中元素如何统计?...
  13. 12.RabbitMQ实战 --- 聪明的Rabbit:扩展RabbitMQ
  14. SQL Server compute [by]
  15. 监控服务架构组成详解和实现监控方法
  16. 第三方浏览器内核嵌入一、Crosswalk
  17. samba 服务器的配置基础
  18. 智慧建造管理平台施工现场视频监控系统
  19. 爬取得猫眼电影前top100排行榜
  20. 老虎证券登陆纳斯达克,CEO巫天华:创业要恪守自己的能力圈...

热门文章

  1. python日程提醒小程序_小程序自动化测试之python版
  2. 30 分钟学 Erlang
  3. C#图片处理之:旋转图片90度的整数倍
  4. c++ 一维高斯拟合_χ2检验教案:拟合度检验与正态分布的关系
  5. qqbot python_Python3.6 QQBot 机器人 - 注册响应函数
  6. php 给数组里面压入数组,php array_push()数组函数:将一个或多个单元压入数组的末尾(入栈)...
  7. sublime快速打开终端terminal
  8. 关于RecyclerView(二)设置EmptyView
  9. Hadoop集群中数据传输(涉及两个集群是非kerberos认证)
  10. android firefox x86,Firefox 26桌面版加强安全 移动版支持x86