RE: what is Hex?

  • From: "Chris Hofstader" <chris.hofstader@xxxxxxxxxxx>
  • To: <programmingblind@xxxxxxxxxxxxx>
  • Date: Sat, 16 Feb 2008 07:58:37 -0500

I actually still think that coding in various assembly languages is a lot
easier than much of what we do today.  In those days, the operating system
and all of the libraries that come with it can be ignored and you can take
total control of everything.  In those days, you knew that the bugs were
probably yours and you didn't have too many people to blame.

I did once encounter a bug on the Texas Instruments 34010 graphics chip that
didn't like clipping lines that ran from lower right to upper left.  Simply
switching the end points fixed the problem but it added a compare and either
a jump or, in the offending case,  two moves to my code which made it look
so much less cute.  TI fixed the bug in the 34020 and all was happy again.

cdh

-----Original Message-----
From: programmingblind-bounce@xxxxxxxxxxxxx
[mailto:programmingblind-bounce@xxxxxxxxxxxxx] On Behalf Of Alex Hall
Sent: Friday, February 15, 2008 7:56 PM
To: programmingblind@xxxxxxxxxxxxx
Subject: Re: what is Hex?

And I thought battleship in Java was hard? My respect for those 
who were with computers that long ago (no offense to anyone) just 
keeps growing.  It is all I can do to understand this 
inheritance, extending classes, abstract classes, and all that 
other fun stuff and it is only my second semester.  I don't 
understand how all that low-level stuff works.  All I know about 
it is that it runs in binary and c or c++ is better for 
programming near it than Java (which is why my precious c++ 
Beep() function is gone in Java; oh how I miss x!!

Have a great day,
Alex

> ----- Original Message -----
>From: "tribble" <lauraeaves@xxxxxxxxx
>To: <programmingblind@xxxxxxxxxxxxx
>Date sent: Fri, 15 Feb 2008 17:24:28 -0500
>Subject: Re: what is Hex?

>Hi all -- yeah! I remember my first exposure to assembler, and 
writing
>little self modifying programs that would morph as they executed.  
This was
>actually necessary in early software on those small systems with 
only 640k
>memory -- programs had to interleave and overwrite parts of 
themselves as
>the whole program and data wouldn't quite fit.  Memory is cheap 
now, and
>although code is much larger now, it is actually less convoluted 
than some
>of the old apps as it doesn't need to do any self monitoring or 
selfe
>changing (that is now handled by the operating system).

>I also in the late 80s worked on an early integrated C 
programming
>environment, doing the incremental linking and debugger support.  
That thing
>ran on unix system V whichtreated processes as files -- you got 
it, they
>were located in the special directory called /proc.  The files 
under /proc
>were named by the process number PID and contained the runtime 
image of
>whatever program it was running -- both the program code and 
data.  To debug
>the thing you would have the debugger run with  permissions to 
overwrite
>otherwise write protected segments -- in this case, the code 
segment.
>So if you wanted to plant a breakpoint and step through a 
program, you had
>to plant an instruction that would halt the process and jump to 
the debugger
>which would do whatever you told it to.  In this old environment 
we actually
>got it incrementally compiling blocks of C code that we could 
attach to
>breakpoints, where the blocks were compiled incrementally at the 
point where
>the brreakpoint was, then it would run at that point until it was 
removed.
>This was useful because it was fast and used the same compiler 
that compiled
>the function to begin with, so you didn't have a separate 
interpreter.
>It also incrementally compiled whole files and planted jumps from 
modified
>functions to the nes function rather than trying to re move the 
code from
>the segment -- this was necessary so the user didn't have to 
restart
>execution afterchanging just one function; if the old function 
was active on
>the stack it could finish its execution and new calls would go to 
the ew
>function.
>Anyway, I found this project quite enjoyable as it delved into a 
lot of low
>level stuff I was interested in.  It was actually chosen to be 
developed
>into a product but shortly before they were going to release it, 
the whole
>department where the were located was dissolved and the project 
(which a lot
>of people liked) went by the wayside.

>Nowadays (I feel so geriatric around here -- anyone else over 
40?) nowadays
>there are lots of integrated systems and incremental compilation 
is common.

>Yes, Sina is the current geek genius on this list...  I wonder 
where he got
>all the info in his head -- he must spend every waking hour 
listening to
>jaws at speed 97...*smile* and that since he was 3 years old! 
*smile*
>Happy hacking all!
>--le

>---- Original Message -----
>From: "Chris Hofstader" <chris.hofstader@xxxxxxxxxxx
>To: <programmingblind@xxxxxxxxxxxxx
>Sent: Friday, February 15, 2008 6:37 AM
>Subject: RE: what is Hex?


>God Sina, you bring back memories of Z80 and needing to "poke" 
instructions
>and data into memory before execution.  I would have thought you, 
who was
>born in 1986 would never had to get to that level.  Personally, I 
think it's
>a really valuable exercise even if one never actually needs to 
use it in a
>"real" program just to get a better understanding of what a 
processor "sees"
>and how base 16 numbers can be turned into both instructions and 
data
>depending upon how the processor looks at them.

>In the network edition of "Bank Street Writer" a word processing 
program
>written entirely in assembly, that was pretty popular in the 
years before
>you learned to talk, I added a function called, 
"DON'T_CALL_THIS."  If you
>did call it the program would crash as the instructions looked 
random.  If,
>however, you looked at the last handful of bytes of the program 
as ASCII, it
>read "FSMITHISAWORM."  Frank Smith, a really great guy, was the 
client on
>the gig and we decided to immortalize him in an Easter Egg that 
only an
>ubergeek could find.

>Now, just for shits and giggles, try to reconstruct the function 
in 80x86
>assembly and receive the truly wasted chunk of time award.

>cdh

>-----Original Message-----
>From: programmingblind-bounce@xxxxxxxxxxxxx
>[mailto:programmingblind-bounce@xxxxxxxxxxxxx] On Behalf Of Sina 
Bahram
>Sent: Thursday, February 14, 2008 9:28 PM
>To: programmingblind@xxxxxxxxxxxxx
>Subject: RE: what is Hex?

>*smile*, wlel actually, if you really want to get down to it ...  
it can be.

>Assembler compiles down to executable instructions to the 
processor, which
>are most often and most easily read in hex.

>I used to know almost all of the 8086 instructions and some of 
their hex
>equivalents a while back.  It's really useful when analysing 
exploit and
>virus code.

>Take care,
>Sina



>-----Original Message-----
>From: programmingblind-bounce@xxxxxxxxxxxxx
>[mailto:programmingblind-bounce@xxxxxxxxxxxxx] On Behalf Of Alex 
Hall
>Sent: Thursday, February 14, 2008 8:47 PM
>To: programmingblind@xxxxxxxxxxxxx
>Subject: re: what is Hex?

>Right, but it almost sounds like some sort of programming 
language.

>Have a great day,
>Alex

>> ----- Original Message -----
>>From: Joseph Lee <joseph.lee22590@xxxxxxxxxxxx
>>To: programmingblind@xxxxxxxxxxxxx
>>Date sent: Thu, 14 Feb 2008 17:27:12 -0800
>>Subject: re: what is Hex?

>>Hi Alex,
>>It's a shortened form of hexadecimal.
>>Cheers,
>>Joseph

>>> ----- Original Message -----
>>>From: Alex Hall <mehgcap@xxxxxxx
>>>To: programmingblind@xxxxxxxxxxxxx
>>>Date sent: Thu, 14 Feb 2008 20:18:21 -0500
>>>Subject: what is Hex?

>>>Hi all
>>>Whatis this Hex that has been talked about
>>recently?

>>>Have a great day,
>>>Alex
>>>__________
>>>View the list's information and change your
>>settings at
>>>//www.freelists.org/list/programmingblin
>>d

>>__________
>>View the list's information and change your settings at
>>//www.freelists.org/list/programmingblind


>__________
>View the list's information and change your settings at
>//www.freelists.org/list/programmingblind

>__________
>View the list's information and change your settings at
>//www.freelists.org/list/programmingblind



>__________ NOD32 2878 (20080215) Information __________

>This message was checked by NOD32 antivirus system.
>http://www.eset.com


>__________
>View the list's information and change your settings at
>//www.freelists.org/list/programmingblind

>__________
>View the list's information and change your settings at
>//www.freelists.org/list/programmingblind


__________
View the list's information and change your settings at 
//www.freelists.org/list/programmingblind



__________ NOD32 2880 (20080215) Information __________

This message was checked by NOD32 antivirus system.
http://www.eset.com


__________
View the list's information and change your settings at 
//www.freelists.org/list/programmingblind

Other related posts: