回覆列表
  • 1 # 使用者2562339713923

    語言有符號數與無符號數之間的轉換:無符號數:不存在正負之分,所有位都用來表示數的本身。

    有符號數:最高位用來表示數的正負,最高位為1則表示負數,最高位為0則表示正數。1. 無符號數轉換為有符號數:看無符號數的最高位是否為1,如果不為1(即為0),則有符號數就直接等於無符號數; 2.如果無符號數的最高位為1,則將無符號數取補碼,得到的數就是有符號數。3..有符號數轉換為無符號數 :看有符號數的最高位是否為1,如果不為1(即為0),則無符號數就直接等於有符號數; 4.如果有符號數的最高位為1,則將有符號數取補碼,得到的數就是無符號數。在無符號整型中表示65535,其二進位制數是1111 1111 1111 1111. 而轉化為有符號的話,1111 1111 1111 1111表示的數是多少呢。我們知道,在有符號的時候,負數的表示是原碼取反加1.那麼我們來反推1111 1111 1111 1111等於多少。首先因為最高為是1,所以1111 1111 1111 1111表示的是負數,那麼1111 1111 1111 1111-1= 1111 1111 1111 1110,再取反,得到1000 0000 0000 0001=-1(符號位不變其他位置按位取反)所以1111 1111 1111 1111 是-1.

  • 中秋節和大豐收的關聯?
  • 為什麼年輕人都習慣熬夜?