1. 程式人生 > >神奇的取反運算

神奇的取反運算

今天在 看書的時候,看到 了這個神奇的東西.不至於原理是什麼,我還沒有想清楚.

一個正數n取反的結果是 -(n+1)

/*************************************************************************
    > File Name: test2.c
    > Author: jukay
    > Mail: [email protected] 
    > Created Time: 2014年12月16日 星期二 22時49分55秒
 ************************************************************************/

#include<stdio.h>
int main()
{
	int i;
	for(i = 0; i < 10111; ++i)
	printf("%d : %d \n",i ,~i);

	return 0;
}

一個h負數的n取反的結果也是-(n+1)
/*************************************************************************
    > File Name: test2.c
    > Author: jukay
    > Mail: [email protected] 
    > Created Time: 2014年12月16日 星期二 22時49分55秒
 ************************************************************************/

#include<stdio.h>
int main()
{
	int i;
	for(i = 0; i < 10111; ++i)
	printf("%d : %d \n",i ,~i);

	return 0;
}


相關推薦

神奇運算

今天在 看書的時候,看到 了這個神奇的東西.不至於原理是什麼,我還沒有想清楚. 一個正數n取反的結果是 -(n+1) /*************************************************************************

php運算值 {echo ~2;}你知道結果是什麽嗎?

計算機 表示 請問 color clas ech tro brush 第一個 echo ~2;   請問結果值是多少呢? 答案是 -3 為什麽? 首先計算機用補碼來存儲的,正數的原碼、反碼、補碼都是一樣的, 例如: 3的原碼、反碼、補碼都是

JAVA按位運算

按位取反是對補碼進行運算,當運算完後,再將補碼變回原碼。 這個符號為按位取反運算子。按位取反的運算規則為0變成1,1變成0. [0->1,1->0] 有這麼一個題:1.求~9的結果是什麼 解:9的二進位制數表示 0000 100

c++中按位運算,型別轉換,擴位

#include <stdio.h> #include <iostream> using namespace std; void main() {   //做這類題目抓住兩點:第一、無論是以進製表示還是整數形式賦值給變數,都要根據變數相應  //的資

運算符:~ 加1

什麽 def col efi console 計算 define war func 否運算符(按位非):~ 加1取反 console.log(~-11); //10 console.log(~-1); //0 console.log(~0);

計算機系統 二進位制原碼 補碼 碼 詳解 JAVA 二進位制位運算(位與 位或 位 位異或 左移 右移)

       在計算機系統中,數值一律使用補碼來表示和儲存。在探求為何計算機要使用補碼之前, 讓我們先了解原碼, 反碼和補碼的概念。   對於一個數, 計算機要使用一定的編碼方式進行儲存。 原碼, 反碼, 補碼是計算機儲存一個具體數字的編碼方式。   一個數在計算機中的二

運算------按位與、按位或、按位異或、、<<、>>、>>>

位或 進制數 如果 符號位 按位與 所有 不同 amp 十進制轉二進制 程序中的所有數在計算機內存中都是以二進制的形式儲存的,位運算就是直接對整數在內存中的二進制位進行操作。 知識點: 1、補碼:用於將十進制的負整數轉換為二進制數。十進制的正整數可以除以2取余,負整數則

MATLAB:圖像二值化、互補圖(運算)(im2bw,imcomplement函數)

idt 部分 轉換成 灰度 技術 ice 工作 圖像 light 圖像二值化、反運算過程涉及到im2bw,imcomplement函數,反運算可以這麽理解:原本黑的區域變為白的區域,白的區域變為黑的區域。 實現過程如下: close all; %關閉當前

運算定要註意數據類型

向上取整 需要 scrip 整數 判斷語句 發現 數據類型 例子 出現 在學習js的過程中經常遇到需要大量計算的問題,此時就需要用到那些常見的運算符。在寫代碼進行數學計算的時候輸入和輸出的數據類型要格外註意。整數和小數,數據類型不同結果也不一樣。有時會因為

運算

add 結合 重要 nbsp left 但是 list padding 四則運算 腦子不好使,老是記不住(?_?),備忘一下。 模運算與基本四則運算有些相似,但是除法例外。其規則如下: (a + b) % p = (a % p + b % p) % p (a -

特定位(js實現)

ack 左移 運算 pre 是把 data- 類型 位操作 個數 去華為面試的時候。沒有做好準備工作。面試的流程沒有問清也沒有查,結果一過去就讓上機做題,著實有點措手不及。筆者是擅長前端的Java Webproject師啊,主要的底層編程知識早已生疏

神奇的位運算

eof googl 去掉 www 知識點 binarys 深入理解 網上 負數 位運算的威力 前言: 在學習Java二進制各種轉換時,發現對位運算很不熟悉,怪我基礎沒打好,更要好好學習了。然後從網上搜刮了一些位運算的小應用,然後有一些不熟悉的自己用Java代碼試了一下,發

按位與,按位或,按位異或,按位

spa 位運算 符號 targe 取反 span 特殊性 一個 target 位運算符:是指對二進制位從低位到高位對齊後進行運算。 1、按位與 & 二進制“與”運算規則:1&1=1 1&0=0 0&0=0 例如

洛谷 P1226 運算||快速冪 題解

代碼 amp base iostream div 其中 tro std strong 此文為博主原創題解,轉載時請通知博主,並把原文鏈接放在正文醒目位置。 題目鏈接:https://www.luogu.org/problem/show?pid=1226 題目描述

Luogu P1226 運算||快速冪(數論,分治)

span 水題 spa 數論 urn 等於 註意 nbsp int P1226 取余運算||快速冪 題目描述 輸入b,p,k的值,求b^p mod k的值。其中b,p,k*k為長整型數。 輸入輸出格式 輸入格式: 三個整數b,p,k. 輸出格式: 輸出“b^p

快速冪||運算 (分治算法)

strong 分享 .cn img 思路 while 指數 快速冪 ron #include<iostream>using namespace std;long b,p,k;long skt=1;int we,tsm;int ksm(long b,long p

洛谷——P1226 運算||快速冪

adg tdi ring span region 復制 ios ostream 結果 P1226 取余運算||快速冪 題目描述 輸入b,p,k的值,求b^p mod k的值。其中b,p,k*k為長整型數。 輸入輸出格式 輸入格式: 三個整數b,p,k.

補碼(為什麽按位再加一):告訴你一個其實很簡單的問題

滿足 所有 我們 進位 數字 樂意 如果 二進制 關系   首先,閱讀這篇文章的你,肯定是一個在網上已經糾結了很久的讀者,因為你查閱了所有你能查到的資料,然後他們都會很耐心的告訴你,補碼:就是按位取反,然後加一。準確無誤,毫無破綻。但是,你搜遍了所有俯拾即是而且準確無誤的答

運算規則

net pos tails 規則 交換 art tail 結合 四則運算 轉自:http://blog.csdn.net/ash_zheng/article/details/38541777 模運算與基本四則運算有些相似,但是除法例外。其規則如下: (a + b) %

分數的乘法逆元和負數的運算

好的 分數 多少 研究 法則 表達 求余 推導 模運算 1.乘法逆元 A.定義 如果ax≡1 (mod p),且gcd(a,p)=1(a與p互質),則稱a關於模p的乘法逆元為x。 既然有ax≡1 (mod p),那麽有ax - py = 1,x是a關於模p的乘法逆元