Metadata-Version: 1.1
Name: xalc
Version: 0.4.0
Summary: Hexadecimal calculator
Home-page: https://github.com/rabinv/xalc
Author: Rabin Vincent
Author-email: rabin@rab.in
License: MIT
Description: .. -*- rst -*-
        
        Xalc
        ====
        
        Xalc is a hexadecimal calculator for embedded systems programmers, implemented
        as a pre-processor for Python expressions, with a console interface based on
        IPython.
        
        Features:
        
        - Mixed calculations with hex, decimal, binary and binary prefix literals
        - Support for undecorated hex literals.  Ambiguous literals can be forced to hex by either prefixing or suffixing with 'x'.
        - Display in hex, decimal, 32-bit binary (with bit position ruler) and binary prefixes (sizes)
        - Simple bit mask construction
        - Bit field extraction operator
        - Highlighting of changed nibbles/bits
        - From IPython: Support for arbitrary Python expressions (minus the ones that conflict with the pre-processed syntax), command history, access to previous results with _* variables, etc.
        
        The following "screenshot" demonstrates some of the features of Xalc.  The real
        program displays the different bases in different colors, if your console
        supports that::
        
         $ xalc
         In [1]: deadbeef
         0xdeadbeef
         Out[1]:
         3735928559    │  28─╮ 24─╮ 20─╮ 16─╮ 12─╮  8─╮  4─╮  0─╮
         0xdeadbeef    │  1101 1110 1010 1101 1011 1110 1110 1111
         3 Gi + 490 Mi + 879 Ki + 751
        
         In [2]: deadbeef $ m5t13
         0xdeadbeef >> 5 & ((0x3fe0) >> 5)
         Out[2]:
          503           │  28─╮ 24─╮ 20─╮ 16─╮ 12─╮  8─╮  4─╮  0─╮
          0x000001f7    │  0000 0000 0000 0000 0000 0001 1111 0111
        
         In [3]: _ ^ cafe
         _ ^ 0xcafe
         Out[3]:
          51977         │  28─╮ 24─╮ 20─╮ 16─╮ 12─╮  8─╮  4─╮  0─╮
          0x0000cb09    │  0000 0000 0000 0000 1100 1011 0000 1001
          50 Ki + 777
        
         In [4]: 7f000000 - 35000000x
         0x7f000000 - 0x35000000
         Out[4]:
          1241513984    │  28─╮ 24─╮ 20─╮ 16─╮ 12─╮  8─╮  4─╮  0─╮
          0x4a000000    │  0100 1010 0000 0000 0000 0000 0000 0000
          1 Gi + 160 Mi
        
         In [5]: m2p0_5_8t9_29_31t31
         (0x3|0x20|0x300|0x20000000|0x80000000)
         Out[5]:
          2684355363    │  28─╮ 24─╮ 20─╮ 16─╮ 12─╮  8─╮  4─╮  0─╮
          0xa0000323    │  1010 0000 0000 0000 0000 0011 0010 0011
          2 Gi + 512 Mi + 803
        
         In [6]: 2g | m12
         0x80000000 | (0x1000)
         Out[6]:
          2147487744    │  28─╮ 24─╮ 20─╮ 16─╮ 12─╮  8─╮  4─╮  0─╮
          0x80001000    │  1000 0000 0000 0000 0001 0000 0000 0000
          2 Gi + 4 Ki
        
         In [7]: -45
         -45
         Out[7]:
          -45           │  28─╮ 24─╮ 20─╮ 16─╮ 12─╮  8─╮  4─╮  0─╮
          0xffffffd3    │  1111 1111 1111 1111 1111 1111 1101 0011
        
        Install with pip::
        
            pip install --upgrade xalc
        
        Or by cloning the `git repo <https://github.com/rabinv/xalc>`_ and running::
        
            python setup.py install
        
        Run ``xalc`` after installation.
        
Platform: UNKNOWN
Classifier: Environment :: Console
Classifier: Framework :: IPython
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python
Classifier: Topic :: Software Development
