Sponsored Content
Full Discussion: Bitwise negation
Top Forums Shell Programming and Scripting Bitwise negation Post 302117646 by dLloydm on Tuesday 15th of May 2007 08:05:21 PM
Old 05-15-2007
Bitwise negation

I am taking an online course on Unix scripting. The topic is Unix arithmetic operators and the lesson is Logical and bitwise operations. It is not clear how much storage space Unix uses to represent integers that are typed. Bitwise negation caused me to question how many bits are used to represent numbers.

The course gives an example: ((~ 2#1001)) evaluates to 2#110

This would imply that only 4 bits are used, otherwise I would expect the example to evaluate to 2#11110110 if 8 bits were used an so on.

I do not have access to a Unix OS or this would be easy to check. I don't know if the shell matters, but I would assume BASH since it allows integers.

So, how many bits are use to represent such values? I understand Unix represents everything as strings unless declared as integer such as using typeset -i. Is this the same using something like 2#1111?

Thanks for any help...
 

9 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

bitwise operators

can anybody write a program to divide a number by another number using bitwise operators (9 Replies)
Discussion started by: areef4u
9 Replies

2. Shell Programming and Scripting

negation in find path

Guys, Pl suggest me how to ignore a path in find command... I am aware of using "!" for other option... but how can i use it like this exampl... I want to search something for in / but not in Pl help. Thanks.. (2 Replies)
Discussion started by: clx
2 Replies

3. Programming

bitwise and if

Hi Suppose we have these code lines: #define _IN_USE 0x001 /* set when process slot is in use */ #define _EXITING 0x002 /* set when exit is expected */ #define _REFRESHING 0x004 ... 1 main () { 2 3 unsigned r_flags =_REFRESHING; 4 5 if (r_flag &... (3 Replies)
Discussion started by: Puntino
3 Replies

4. Shell Programming and Scripting

if statement negation

Hi all, I've been searching the internet and can't find an answer to this. Im trying to figure out how to negate a whole expression befor an if. I'll explain below. Let's say x=0 y=1 ] (this is false) I would like to negate this whole boolean condition. To negate the above... (4 Replies)
Discussion started by: rethymno19
4 Replies

5. Homework & Coursework Questions

Negation

Hello, have anybody any idea, how to negate some expression? I have code that greps somethnig and I want filter from it some results...How to make it? IDontWantThisExpression=$1 grep 'some regex' | grep '$IDontWantThisExpression' testfile.txt Thanks for any advices. Faculty of... (2 Replies)
Discussion started by: Dworza
2 Replies

6. FAQ Submission Queue

Analysis in bitwise XOR

The purpose of this article is revealing the unrevealed parts of the bitwise XOR. As we aware, the truth table for the XOR operator is : A B A^B 0 0 0 0 1 1 1 0 1 1 1 0 For example , 1^2 will be calculated as given below: First the operands... (1 Reply)
Discussion started by: pandeesh
1 Replies

7. Shell Programming and Scripting

how to use bitwise or operator in /bin/sh

please any one can suggest me how to use bitesie || opearator to do this #initallize a=0 b=0 #condition if then a=0 else a=1 fi #bitwise or opeartion b = a || b Please view this code tag video for how to use code tags when posting code and data. (3 Replies)
Discussion started by: Palaniappan
3 Replies

8. Shell Programming and Scripting

Bitwise comparison of cols

Hello, I want to compute the bitwise number of matches in pairwise fashion for all columns. The problem is I have 18486955 rows and 750 columns. Please help with code, I believe this will take a lot of time, is there a way of tracking progress? Input Org1 Org2 Org3 A A T A ... (9 Replies)
Discussion started by: ritakadm
9 Replies

9. Shell Programming and Scripting

Negation in Bash Globbing

$ ls -1 a.1 b.1 x_a.1 x_b.1 $ ls -1 * b.1 x_a.1 x_b.1 $ ls -1 ** a.1 b.1 x_a.1 x_b.1The last result is not as expected. Why? Thanks. (2 Replies)
Discussion started by: carloszhang
2 Replies
Int64(3o)							   OCaml library							 Int64(3o)

NAME
Int64 - 64-bit integers. Module Module Int64 Documentation Module Int64 : sig end 64-bit integers. This module provides operations on the type int64 of signed 64-bit integers. Unlike the built-in int type, the type int64 is guaranteed to be exactly 64-bit wide on all platforms. All arithmetic operations over int64 are taken modulo 2^{64 Performance notice: values of type int64 occupy more memory space than values of type int , and arithmetic operations on int64 are gener- ally slower than those on int . Use int64 only when the application requires exact 64-bit arithmetic. val zero : int64 The 64-bit integer 0. val one : int64 The 64-bit integer 1. val minus_one : int64 The 64-bit integer -1. val neg : int64 -> int64 Unary negation. val add : int64 -> int64 -> int64 Addition. val sub : int64 -> int64 -> int64 Subtraction. val mul : int64 -> int64 -> int64 Multiplication. val div : int64 -> int64 -> int64 Integer division. Raise Division_by_zero if the second argument is zero. This division rounds the real quotient of its arguments towards zero, as specified for Pervasives.(/) . val rem : int64 -> int64 -> int64 Integer remainder. If y is not zero, the result of Int64.rem x y satisfies the following property: x = Int64.add (Int64.mul (Int64.div x y) y) (Int64.rem x y) . If y = 0 , Int64.rem x y raises Division_by_zero . val succ : int64 -> int64 Successor. Int64.succ x is Int64.add x Int64.one . val pred : int64 -> int64 Predecessor. Int64.pred x is Int64.sub x Int64.one . val abs : int64 -> int64 Return the absolute value of its argument. val max_int : int64 The greatest representable 64-bit integer, 2^{63 - 1. val min_int : int64 The smallest representable 64-bit integer, -2^{63. val logand : int64 -> int64 -> int64 Bitwise logical and. val logor : int64 -> int64 -> int64 Bitwise logical or. val logxor : int64 -> int64 -> int64 Bitwise logical exclusive or. val lognot : int64 -> int64 Bitwise logical negation val shift_left : int64 -> int -> int64 Int64.shift_left x y shifts x to the left by y bits. The result is unspecified if y < 0 or y >= 64 . val shift_right : int64 -> int -> int64 Int64.shift_right x y shifts x to the right by y bits. This is an arithmetic shift: the sign bit of x is replicated and inserted in the vacated bits. The result is unspecified if y < 0 or y >= 64 . val shift_right_logical : int64 -> int -> int64 Int64.shift_right_logical x y shifts x to the right by y bits. This is a logical shift: zeroes are inserted in the vacated bits regardless of the sign of x . The result is unspecified if y < 0 or y >= 64 . val of_int : int -> int64 Convert the given integer (type int ) to a 64-bit integer (type int64 ). val to_int : int64 -> int Convert the given 64-bit integer (type int64 ) to an integer (type int ). On 64-bit platforms, the 64-bit integer is taken modulo 2^{63, i.e. the high-order bit is lost during the conversion. On 32-bit platforms, the 64-bit integer is taken modulo 2^{31, i.e. the top 33 bits are lost during the conversion. val of_float : float -> int64 Convert the given floating-point number to a 64-bit integer, discarding the fractional part (truncate towards 0). The result of the con- version is undefined if, after truncation, the number is outside the range [ Int64.min_int , Int64.max_int ]. val to_float : int64 -> float Convert the given 64-bit integer to a floating-point number. val of_int32 : int32 -> int64 Convert the given 32-bit integer (type int32 ) to a 64-bit integer (type int64 ). val to_int32 : int64 -> int32 Convert the given 64-bit integer (type int64 ) to a 32-bit integer (type int32 ). The 64-bit integer is taken modulo 2^{32, i.e. the top 32 bits are lost during the conversion. val of_nativeint : nativeint -> int64 Convert the given native integer (type nativeint ) to a 64-bit integer (type int64 ). val to_nativeint : int64 -> nativeint Convert the given 64-bit integer (type int64 ) to a native integer. On 32-bit platforms, the 64-bit integer is taken modulo 2^{32. On 64-bit platforms, the conversion is exact. val of_string : string -> int64 Convert the given string to a 64-bit integer. The string is read in decimal (by default) or in hexadecimal, octal or binary if the string begins with 0x , 0o or 0b respectively. Raise Failure int_of_string if the given string is not a valid representation of an integer, or if the integer represented exceeds the range of integers representable in type int64 . val to_string : int64 -> string Return the string representation of its argument, in decimal. val bits_of_float : float -> int64 Return the internal representation of the given float according to the IEEE 754 floating-point ``double format'' bit layout. Bit 63 of the result represents the sign of the float; bits 62 to 52 represent the (biased) exponent; bits 51 to 0 represent the mantissa. val float_of_bits : int64 -> float Return the floating-point number whose internal representation, according to the IEEE 754 floating-point ``double format'' bit layout, is the given int64 . type t = int64 An alias for the type of 64-bit integers. val compare : t -> t -> int The comparison function for 64-bit integers, with the same specification as Pervasives.compare . Along with the type t , this function compare allows the module Int64 to be passed as argument to the functors Set.Make and Map.Make . OCamldoc 2012-06-26 Int64(3o)
All times are GMT -4. The time now is 06:48 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy