赞
踩
mac的M1 M2芯 arm64架构。楼主为了构造开发环境,在mac安装了虚拟机(Parallels DeskTop)。在虚拟机上安装了Ubuntu系统。在系统上安装了docker(菜鸟教程搜索docker安装能看到各种环境的安装方法:推荐国内镜像的自动安装)。在docker安装mysql的时候遇到问题
docker pull mysql:5.7
得到了不太友好的反馈:
root@ubuntu-linux-22-04-desktop:/home# docker pull mysql:5.7
5.7: Pulling from library/mysql
no matching manifest for linux/arm64/v8 in the manifest list entries
于是微调一下
docker pull --platform linux/x86_64 mysql:5.7
如果你是Mac苹果电脑,并且在Docker上运行某个应用,则可以尝试如下解决方式。
启动命令加入 --platform linux/amd64 即可
TIP
运算符是把数字看作二进制来进行计算
a 为 60,b 为 13二进制格式如下:
a = 0011 1100
b = 0000 1101
a&b = 0000 1100
a|b = 0011 1101
a^b = 0011 0001
~a = 1100 0011
运算符 | 描述 | 实例 |
---|---|---|
& | 按位与运算符:参与运算的两个值,如果两个相应位都为1,则该位的结果为1,否则为0 | (a & b) 输出结果 12 ,二进制解释: 0000 1100 |
| | 按位或运算符:只要对应的二个二进位有一个为1时,结果位就为1。 | (a | b) 输出结果 61 ,二进制解释: 0011 1101 |
^ | 按位异或运算符:当两对应的二进位相异时,结果为1 | (a ^ b) 输出结果 49 ,二进制解释: 0011 0001 |
~ | 按位取反运算符:数据存储补码 取反后得出的原码数值。 | (~a ) 输出结果 -61 。推导过程。 |
<< | 左移动运算符:运算数的各二进位全部左移若干位,由"<<"右边的数指定移动的位数,高位丢弃,低位补0。 | a << 2 输出结果 240 ,二进制解释: 1111 0000 |
>> | 右移动运算符:把">>“左边的运算数的各二进位全部右移若干位,”>>"右边的数指定移动的位数 | a >> 2 输出结果 15 ,二进制解释: 0000 1111 |
a = 60 # 60 = 0011 1100
b = 13 # 13 = 0000 1101
c = 0
c = a & b; # 0000 1100 4+8 = 12
print("1 - c 的值为:", c)
c = a | b; # 0011 1101 1+4+8+16+32 = 61
print("2 - c 的值为:", c)
c = a ^ b; # 49 = 0011 0001 1+16+32 =49
print("3 - c 的值为:", c)
c = ~a;
#1100 0011 (-1) 64 32 16 8 4 2 1
print("4 - c 的值为:", c)
c = a << 2; # 240 = 1111 0000
print("5 - c 的值为:", c)
c = a >> 2; # 15 = 0000 1111
print("6 - c 的值为:", c)
1 - c 的值为: 12
2 - c 的值为: 61
3 - c 的值为: 49
4 - c 的值为: -61
5 - c 的值为: 240
6 - c 的值为: 15
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。