Commit f8b91752 authored by Jay Belanger's avatar Jay Belanger
Browse files

calc-bin.el (calc-radix): Have the O option turn on twos-complement mode.

parent a0d33975
2010-04-18 Jay Belanger <jay.p.belanger@gmail.com>
* calc.texi (Radix modes): Mention that the option prefix will
turn on twos-complement mode.
(Inverse and Hyperbolic Flags): Mention the Option flag.
2010-04-15 Carsten Dominik <carsten.dominik@gmail.com> 2010-04-15 Carsten Dominik <carsten.dominik@gmail.com>
* org.texi (LaTeX and PDF export): Add a footnote about xetex. * org.texi (LaTeX and PDF export): Add a footnote about xetex.
......
...@@ -12289,15 +12289,21 @@ may be executed with @kbd{x} or @kbd{M-x}. Their effect is simply to ...@@ -12289,15 +12289,21 @@ may be executed with @kbd{x} or @kbd{M-x}. Their effect is simply to
toggle the Inverse and/or Hyperbolic flags and then execute the toggle the Inverse and/or Hyperbolic flags and then execute the
corresponding base command (@code{calc-sin} in this case). corresponding base command (@code{calc-sin} in this case).
   
The Inverse and Hyperbolic flags apply only to the next Calculator @kindex O
command, after which they are automatically cleared. (They are also @pindex calc-option
cleared if the next keystroke is not a Calc command.) Digits you The @kbd{O} key (@code{calc-option}) sets another flag, the
type after @kbd{I} or @kbd{H} (or @kbd{K}) are treated as prefix @dfn{Option Flag}, which also can alter the subsequent Calc command in
arguments for the next command, not as numeric entries. The same various ways.
is true of @kbd{C-u}, but not of the minus sign (@kbd{K -} means to
subtract and keep arguments). The Inverse, Hyperbolic and Option flags apply only to the next
Calculator command, after which they are automatically cleared. (They
The third Calc prefix flag, @kbd{K} (keep-arguments), is discussed are also cleared if the next keystroke is not a Calc command.) Digits
you type after @kbd{I}, @kbd{H} or @kbd{O} (or @kbd{K}) are treated as
prefix arguments for the next command, not as numeric entries. The
same is true of @kbd{C-u}, but not of the minus sign (@kbd{K -} means
to subtract and keep arguments).
Another Calc prefix flag, @kbd{K} (keep-arguments), is discussed
elsewhere. @xref{Keep Arguments}. elsewhere. @xref{Keep Arguments}.
   
@node Calculation Modes, Simplification Modes, Inverse and Hyperbolic, Mode Settings @node Calculation Modes, Simplification Modes, Inverse and Hyperbolic, Mode Settings
...@@ -13175,12 +13181,13 @@ in the current radix. (Larger integers will still be displayed in their ...@@ -13175,12 +13181,13 @@ in the current radix. (Larger integers will still be displayed in their
entirety.) entirety.)
   
@cindex Two's complements @cindex Two's complements
With the binary, octal and hexadecimal display modes, Calc can Calc can display @expr{w}-bit integers using two's complement
display @expr{w}-bit integers using two's complement notation. This notation, although this is most useful with the binary, octal and
option is selected with the key sequences @kbd{C-u d 2}, @kbd{C-u d 8} hexadecimal display modes. This option is selected by using the
and @kbd{C-u d 6}, respectively, and a negative word size might be @kbd{O} option prefix before setting the display radix, and a negative word
appropriate (@pxref{Binary Functions}). In two's complement size might be appropriate (@pxref{Binary Functions}). In two's
notation, the integers in the (nearly) symmetric interval from complement notation, the integers in the (nearly) symmetric interval
from
@texline @math{-2^{w-1}} @texline @math{-2^{w-1}}
@infoline @expr{-2^(w-1)} @infoline @expr{-2^(w-1)}
to to
...@@ -35461,6 +35468,7 @@ keystrokes are not listed in this summary. ...@@ -35461,6 +35468,7 @@ keystrokes are not listed in this summary.
@r{ @: M @: @: @:calc-more-recursion-depth@:} @r{ @: M @: @: @:calc-more-recursion-depth@:}
@r{ @: I M @: @: @:calc-less-recursion-depth@:} @r{ @: I M @: @: @:calc-less-recursion-depth@:}
@r{ a@: N @: @: 5 @:evalvn@:(a)} @r{ a@: N @: @: 5 @:evalvn@:(a)}
@r{ @: O @:command @: 32 @:@:Option}
@r{ @: P @: @: @:@:pi} @r{ @: P @: @: @:@:pi}
@r{ @: I P @: @: @:@:gamma} @r{ @: I P @: @: @:@:gamma}
@r{ @: H P @: @: @:@:e} @r{ @: H P @: @: @:@:e}
2010-04-18 Jay Belanger <jay.p.belanger@gmail.com>
* calc.el (calc-mode-map): Bind "O" to `calc-missing-key'.
* calc-bin.el (calc-radix): Have the "O" option turn on
twos-complement mode.
2010-04-17 Jay Belanger <jay.p.belanger@gmail.com> 2010-04-17 Jay Belanger <jay.p.belanger@gmail.com>
* calc-ext.el (calc-init-extensions): Add keybinding for 'calc-option'. * calc-ext.el (calc-init-extensions): Add keybinding for 'calc-option'.
......
...@@ -72,6 +72,12 @@ opinions. ...@@ -72,6 +72,12 @@ opinions.
Summary of changes to "Calc" Summary of changes to "Calc"
------- -- ------- -- ---- ------- -- ------- -- ----
Emacs 24.1
* Added "O" option prefix.
* Used "O" prefix to "d r" (`calc-radix') to turn on twos-complement mode.
Emacs 23.2 Emacs 23.2
* Added twos-complement display. * Added twos-complement display.
......
...@@ -175,7 +175,7 @@ the size of a Calc bignum digit.") ...@@ -175,7 +175,7 @@ the size of a Calc bignum digit.")
(progn (progn
(calc-change-mode (calc-change-mode
(list 'calc-number-radix 'calc-twos-complement-mode) (list 'calc-number-radix 'calc-twos-complement-mode)
(list n (and (or (= n 2) (= n 8) (= n 16)) arg)) t) (list n (or arg (calc-is-option))) t)
;; also change global value so minibuffer sees it ;; also change global value so minibuffer sees it
(setq-default calc-number-radix calc-number-radix)) (setq-default calc-number-radix calc-number-radix))
(setq n calc-number-radix)) (setq n calc-number-radix))
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment