1和0的与操作
@毋骨3061:子网掩码和IP地址怎么进行"与"的操作,求举例,求详细步骤 -
赵店15187671667…… 首先你需要把IP地址的点分十进制的换成二进制,例如192.168.0.1和掩码255.255.255.0换算成如图 然后就可以进行与操作了,主机与掩码一位一位相对应,两个都是1与结果就是1,其余的01和00与结果全部是0,子网号就是主机与掩码与的结果. 至与十进制换二制的方法可以在网上找找!推荐计算IP地址用这个软件,希望可以帮到你
@毋骨3061:C语言位操作 -
赵店15187671667…… 如果state&0x8000的值为0,则state&0x8000?1:0的结果就是0,否则就是1.state&0x8000是按位进行与操作,与操作就是把两个数都转化为二进制数,然后对应位依次进行比较,如果对应位都为1,那么与操作结果就是1,如果没有对应位都为1的情况,那么与操作结果就是0.0x8000是十六进制数,转换成二进制就是1000 0000 0000 0000,然后与state的值按位进行与操作.这里如果state的值也为0x8000,那么这个与操作结果就是1,否则与操作结果就是0.
@毋骨3061:两个数按位与操作等于0代表什么? -
赵店15187671667…… 什么也不代表,按位与只是一种运算而已.1&1=1,1&0=0,0&0=0.
@毋骨3061:&&和&有什么区别?为什么计算结果不一样? -
赵店15187671667…… &是按位与运算符 即按两个操作数的二进制每一位进行与运算 如二进制数01101&01010 结果是二进制数 01000; (1&1=1;0&1=0;0&0=0;1&0=0); &&是逻辑与运算符,计算机的逻辑无非两种,0和非0; 例如1和2都是非0,1&&2就是非0,也就是真的,结果返回1; 如0&&3,也就是假,结果返回0;
@毋骨3061:在plc编程中判断状态字,是通过通过用逻辑用1与0和0或1来判断,还是读取状态字中每一位来判断好, -
赵店15187671667…… 具体情况,具体分析:一般采用“与”操作,取出每一位的状态,然后判断,如去第一位,就“与”“01H”.
@毋骨3061:刚开始学verilog,我想问一下什么叫与,和按位与?他们的区别是什么? -
赵店15187671667…… 楼上说错了. (1)按位与就是楼上说的第一种情况,n位信号a和n位信号b按位与,得到结果c也是n位,c的每一位是a和b的每一位相与的结果. (2)n位信号a和n位信号b相与,得到的结果是1位,如果a和b有一个为0,这1位信号就为0. (3)而楼上说的第二种情况是归约操作,但操作数操作符,比如c=&a;c是1位数据,a是n位数据,c便是a的第一位与第二位,得到结果再与上第三位,....,一直得到c. verilog中这三种与用的都是比较多的.
@毋骨3061:按位与操作?
赵店15187671667…… 会有追加吗? 首先,你的0376这个数字应该是8进制数吧,前面的0应该是八进制的识别符吧. 因此,0376的二进制就是1111 1110,二进制的与运算规则是,只有两个数同时为1时,则结果才为1,只要有一个数为0,则结果就为0.比如1&1=1...
@毋骨3061:如果一个unsigned类型的数据再“&0xff”有什么用? -
赵店15187671667…… &是与操作,即0&1=1 1&1=1 , 1&0=0 0&0=0 也就是说任何数与 1与的话值不变,与0与的话 值清空为0 ,所以32为unisginded数与0xff进行与操作,也就相当于 与二进制的 00000000 00000000 00000000 11111111进行与操作,也就是将其高位清空,只留下低8位.比如 0x1234&0xff=0x0034 ,0x12345678&0xff=0x00000078,0x65&0xff=0x65,明白?
@毋骨3061:c++中 if (nState & BT - TAB) 这个条件语句是什么意思?nState 是UINT型的,BT - TAB是定义的一个宏 -
赵店15187671667…… &是按位“与”运算符,因为计算机内部是用“0”和“1”表示数据的,那么对于两个整数(其他数据也是这样),表示起来就是0和1的序列,比如10进制的10用二进制表示是1010,127是1111111,假定这两个数都是char类型,则可表示为00001010和01111111,当用&获取计算结果时,则需从高到低(也可以说成是从低到高)对齐各位,如果两个数的对应位都为1,则结果为1,否则为0,即00001010 & 01111111 = 00001010. 对于nState & BT_TAB来说,除非结果中的每一位都为0,则nState & BT_TAB为假,否则,则为真.
赵店15187671667…… 首先你需要把IP地址的点分十进制的换成二进制,例如192.168.0.1和掩码255.255.255.0换算成如图 然后就可以进行与操作了,主机与掩码一位一位相对应,两个都是1与结果就是1,其余的01和00与结果全部是0,子网号就是主机与掩码与的结果. 至与十进制换二制的方法可以在网上找找!推荐计算IP地址用这个软件,希望可以帮到你
@毋骨3061:C语言位操作 -
赵店15187671667…… 如果state&0x8000的值为0,则state&0x8000?1:0的结果就是0,否则就是1.state&0x8000是按位进行与操作,与操作就是把两个数都转化为二进制数,然后对应位依次进行比较,如果对应位都为1,那么与操作结果就是1,如果没有对应位都为1的情况,那么与操作结果就是0.0x8000是十六进制数,转换成二进制就是1000 0000 0000 0000,然后与state的值按位进行与操作.这里如果state的值也为0x8000,那么这个与操作结果就是1,否则与操作结果就是0.
@毋骨3061:两个数按位与操作等于0代表什么? -
赵店15187671667…… 什么也不代表,按位与只是一种运算而已.1&1=1,1&0=0,0&0=0.
@毋骨3061:&&和&有什么区别?为什么计算结果不一样? -
赵店15187671667…… &是按位与运算符 即按两个操作数的二进制每一位进行与运算 如二进制数01101&01010 结果是二进制数 01000; (1&1=1;0&1=0;0&0=0;1&0=0); &&是逻辑与运算符,计算机的逻辑无非两种,0和非0; 例如1和2都是非0,1&&2就是非0,也就是真的,结果返回1; 如0&&3,也就是假,结果返回0;
@毋骨3061:在plc编程中判断状态字,是通过通过用逻辑用1与0和0或1来判断,还是读取状态字中每一位来判断好, -
赵店15187671667…… 具体情况,具体分析:一般采用“与”操作,取出每一位的状态,然后判断,如去第一位,就“与”“01H”.
@毋骨3061:刚开始学verilog,我想问一下什么叫与,和按位与?他们的区别是什么? -
赵店15187671667…… 楼上说错了. (1)按位与就是楼上说的第一种情况,n位信号a和n位信号b按位与,得到结果c也是n位,c的每一位是a和b的每一位相与的结果. (2)n位信号a和n位信号b相与,得到的结果是1位,如果a和b有一个为0,这1位信号就为0. (3)而楼上说的第二种情况是归约操作,但操作数操作符,比如c=&a;c是1位数据,a是n位数据,c便是a的第一位与第二位,得到结果再与上第三位,....,一直得到c. verilog中这三种与用的都是比较多的.
@毋骨3061:按位与操作?
赵店15187671667…… 会有追加吗? 首先,你的0376这个数字应该是8进制数吧,前面的0应该是八进制的识别符吧. 因此,0376的二进制就是1111 1110,二进制的与运算规则是,只有两个数同时为1时,则结果才为1,只要有一个数为0,则结果就为0.比如1&1=1...
@毋骨3061:如果一个unsigned类型的数据再“&0xff”有什么用? -
赵店15187671667…… &是与操作,即0&1=1 1&1=1 , 1&0=0 0&0=0 也就是说任何数与 1与的话值不变,与0与的话 值清空为0 ,所以32为unisginded数与0xff进行与操作,也就相当于 与二进制的 00000000 00000000 00000000 11111111进行与操作,也就是将其高位清空,只留下低8位.比如 0x1234&0xff=0x0034 ,0x12345678&0xff=0x00000078,0x65&0xff=0x65,明白?
@毋骨3061:c++中 if (nState & BT - TAB) 这个条件语句是什么意思?nState 是UINT型的,BT - TAB是定义的一个宏 -
赵店15187671667…… &是按位“与”运算符,因为计算机内部是用“0”和“1”表示数据的,那么对于两个整数(其他数据也是这样),表示起来就是0和1的序列,比如10进制的10用二进制表示是1010,127是1111111,假定这两个数都是char类型,则可表示为00001010和01111111,当用&获取计算结果时,则需从高到低(也可以说成是从低到高)对齐各位,如果两个数的对应位都为1,则结果为1,否则为0,即00001010 & 01111111 = 00001010. 对于nState & BT_TAB来说,除非结果中的每一位都为0,则nState & BT_TAB为假,否则,则为真.