首先,10010110右移1位怎么会是11001011?应该是01001011才对(前面补0)
右移接近于除以2,,其原理也很简单:
2进制转换为10进制,是数字*2^加权
如10010110=1*2^7+0*2^6+0*2^5+1*2^4+0*2^3+1*2^2+1*2^1+0*2^0
右移1位以后为1001011=1*2^6+0*2^5+0*2^4+1*2^3+0*2^2+1*2^1+1*2^0
相当于所有的加权都-1,则相当于除以2
补充,你那种最高位保留的,最高位是作为符号位的,所以保留,实际数值是后面的7位,如10010110,则右移后为10001011,也是要补个0的