I formerly owned a 28C back in the 1980s. I dearly miss its very complete binary/octal/hexadecimal numerals. I have never found a comparable feature set for nondecimal bases. Do any of HP's current calculators have the following capabilities: 1) binary/octal/hexadecimal fractional numerals to the right of the radix point; 2) binary/octal/hexadecimal numerals larger than 32 bits; 3) negative-to-twos-complement-viewed-as-unsigned presentation (the equivalent in C language of: printf("%x",-37) that presents ffffffdb in hexadecimal); 4) setting word width for modulo arithmetic (e.g., 8-bit, 16-bit, 32-bit)?
HP 28C/S equivalent among HP's current products
|
|
« Next Oldest | Next Newest »
|
▼
05-19-2006, 11:29 PM
▼
05-20-2006, 12:58 AM
Daniel -- Well, I'm not the expert on RPL-based HP calculators, but I do have one each of the successor 48-series and 49-series models, in addition to the HP-28C. The 48- and 49-series models have all of the functionality of the original 28-series. The presently-sold models include the HP-49G+ and the HP-48GII. These are outsourced products with the HP logo, and might still not be up to the standards of quality set by the genuine HP calculators. The HP calc with the best binary/octal/hexadecimal functionlaity, IMO, was the HP-16C, which was discontinued in 1989 but is still readily available on eBay for a considerable price. I'll admit that I do not share your high regard for the implementation of base-integer functionality on the HP-28/48/49. Here's a post of mine on the topic, which turned into a long thread about simulators versus emulators... http://www.hpmuseum.org/cgi-sys/cgiwrap/hpmuseum/archv015.cgi?read=77331#77331 -- KS
05-20-2006, 01:55 AM
Hi, Daniel; AFAIK, no HP calculator offered binary/octal/hexadecimal fractional numerals as standard operating feature. The binary representations deal with numbers as integers. Once a decimal number is shown as binary, the fractional part is truncated. The first implementation I saw as a program to deal with fractional numbers in any base was available with the HP25 Applications, an original HP application book for the HP25/25C. As Karl mentioned, the HP16C deals with integers up to 64 bits, and it goes ahead with double precision multiplication, division and reminder. In this case, the resulting value may be up to 128 bits (Y and X stack registers used together to hold resulting value after [DBLĂ—] with word size=64). Anyway, the HP48/49 series (RPL models) may accept libraries that enhance their functionality. I used 'binary' as an argument for search and found some relevant results. If you want to have a look at it... Hope this helps. Cheers. Luiz (Brazil)
Edited: 20 May 2006, 2:02 a.m. ▼
05-20-2006, 06:05 AM
Quote:
True, the only one I know of (apart from binary) is the TI SR-22 that I happen to own: a really interesting machine! Edited: 20 May 2006, 6:07 a.m. ▼
05-20-2006, 12:58 PM
Hey, Massimo; thank you for pointing this out. I remember that some (long?) time ago, this issue came across and the TI52 was mentioned as being able to handle not only binary integers, but also binary, hex and octal numbers with fractionary part. I was not sure which calculator was the one able to such feat, I was about to think of a Casio or some other brand. Thanks again! Luiz (Brazil)
05-20-2006, 08:11 AM
I'm happy to report that HP doesn't have anything equivalent to Quote:"Binary integers" also have a decimal base representation in these calculators. Actually, they're all stored the same and treated the same for arithmetic operations, and only displayed differently depending on the base.
Starting with the 28S, binary integers are displayed with a
All 48 and 49 series can do everything that the 28 series can with
The 16C seems to have better built-in capabilities for binary Quote:Like Luiz, as far as I know, no HP calculator has ever had this built-in. Maybe think of it as sort of like a slide rule, where it's up to the user to keep track of where the decimal point has to be.
Just sort of thinking out loud here, maybe you could treat a
For displaying hexadecimal numbers with a fractional part, I
The 49 series adds a new object type, the "exact integer", a 12 10 / returns '6/5' instead of 1.2.Binary integers can be converted to exact integers with the sequence B\->R R\->I, but converting through real numbers limits exact conversions to 12 significant decimal digits, so that's good only for integers #E8D4A50FFFh and less. Exact integers can be converted to binary integers with R\->B, although I don't know the limit of the accuracy with that. Too bad that they didn't provide UserRPL B\->I and I\->B commands.
For a binary integer to exact integer conversion with 64-bit %%HP: T(3)F(.); @ ASCII transfer header.Note that the above doesn't force an object to the current wordsize. If you also want that, first do a unity operation such as adding or subracting 0, or multiplying or dividing by 1.
Converting an exact integer to a binary integer with 64-bit %%HP: T(3)F(.); @ ASCII transfer header.Again, this doesn't force the binary integer to the current wordsize (although it will be displayed that way). You can force that by doing a unity operation after the conversion.
I don't know, but maybe using exact integers could be helpful. Quote:All 28, 48, and 49 series can have the wordsize for binary integer operations set from 1 through 64 bits. But note that user binary integers are always stored (and recalled) as 64-hit numbers. The display depends on the current wordsize and HEX/DEC/OCT/BIN display mode. Any arithmetic, logic, shift, or rotate operation on a binary number forces any bits more significant than specified by the wordsize to zero. Quote:I don't follow that, but the two's complement of a binary integer is returned by pressing the [+/-] key to invoke the NEG command. Of course the NOT command gives you the one's complement. I expect that you can figure out how to do what you want here. Remember to use the appropriate wordsize.
I recall doing byte-wise big-endian / little-endian conversions on
Quote:See my response to your number 2 question.
Also, do some searches at http://www.hpcalc.org/ and
Regards, |