bit-manipulation - GAP 中的位运算符
问题描述
是否能够在 GAP 编程语言中使用位运算符?例如,在 Python 中,可以执行以下操作:
a = 60 # 60 = 0011 1100
b = 13 # 13 = 0000 1101
c = 0
c = a & b; # 12 = 0000 1100
c = a | b; # 61 = 0011 1101
c = a ^ b; # 49 = 0011 0001
c = ~a; # -61 = 1100 0011
c = a << 2; # 240 = 1111 0000
c = a >> 2; # 15 = 0000 1111
我希望能够在 GAP 中完成上述所有操作,但我似乎在文档中找不到任何内容。
这是文档的链接:https ://www.gap-system.org/Manuals/doc/ref/chap0.html
解决方案
不,没有直接可用的此类操作。根据您实际想要做的事情,您当然可以以各种方式“模仿”它们,但这不会那么有效。例如,您使用布尔列表(内部存储为位串),或 GF(2) 上的向量空间中的向量。
推荐阅读
- typescript - 使用Typescript的keyof获取对应类型?
- apache-spark - 我的大数据框架设置是否完整,还是我错过了一些重要的东西?
- ios - 如何在 iOS 13 中创建带有麦克风图标的搜索栏?
- r - 如何在 R 中编写循环?
- magento - 404 错误:找不到页面。(Magento 2 全新安装 ubuntu 18)
- google-app-engine - 本地环境中的 gcloud、python 3、app.yaml 没有
- c++ - 控制台顶部的永久时钟
- c - visual c ++ winSock 连接到vps,vds服务器,客户端和服务器等待连接,如何修复?
- python - TypeError: Column() 得到了一个意外的关键字参数“primary_key”
- python - 有没有办法为使用 parser.add_option 创建的选项输入输入,而不为同一选项输入任何输入?