Well it's very easy but first you must note the fact that if you system is 32 bit you cannot use all 32 bits to represent the number rather just 31, same for 16 bit and 8 bit systems ; the rightmost bit is never used to denote the magnitude of the number but rather just the sign.
There are some areas where you can tell the system to use all the bits for magnitude so 2's complement isn't used as such and all numbers will be assumed positive but normally for the most "regular" business we use signed numbers
Here's an example for an 8-bit systems
Step 1. Covert it to binary (you did that already)

You can see since it's binary going right to left each place value is double of the next in contrast to decimal where each place value is 10 times of its predecessor
Step 2. Invert all the bits form the result from previous step

Step 3. Now add 1 to the accumulated result from the previous step

Now ~
to above result will give 00001000
ie 8
Why so?
Because you are using BITWISE operator it knows nothing of the underlying number it just does what it should - inverting rest of the things like how to make sense of this 1s0s is upto the system which does a reverse 2s complement but since it's a postive number (MSB is 0) so it knows there's no need to do anything it just converts it to decimal but had it been negative it would have done all the computation to reverse the 2s complement because 2s complement of positive number is same as that number.
Now note that if you are using signed number as in above you can use 8 bits to represent number from -128 to 127 so to represent 256 you must upgrade to 32 bit.
A fun thing is to note that in 2's complement form for positive numbers more 1s means greater magnitude whereas for negative numbers 0s mean more magnitude
It would be hard at first to interpret 2s complement directly so start first converting every 2's complement to binary then interpret it as decimal once you are proficient you can directly tell what a 2s complement form amounts to in decimal
Ref.
http://sandbox.mc.edu/~bennet/cs110/tc/tctod.html
https://www.rapidtables.com/convert/number/binary-to-decimal.html
http://onlinecalculators.brainmeasures.com/Numbers/TwosComplimentCalculations.aspx
https://www.quora.com/Why-computer-use-2s-complement-to-store-negative-number-instead-of-1s-complement
Update:
To answer your comment : above isn't applicable to positive numbers.2s complement of positive number is that same number itself you might ask why so? well it's because 2s complement was invented to mitigate the problem of subtraction so computers really don't have to implement a SUB circuit separately (in fact there isn't any SUB logic gate at all! all we have is AND OR and NOT that's why it's hard to implement a SUB circuit)
So now same circuit could be used for addition as well as subtraction which uses 2s complement 'hack' in to perform subtraction by doing addition!
So 1 is stored as 00000001
now when you NOT it ie ~00000001
gives11111110
now that -2 in 2s complement form