I credit an amazing assembler instructor in college who got me interested enough to pay attention to such things a lot more than I had earlier on. Then, after that, I also started working with some really hardcore assembler/low level c guys a lot, so between hose two experiences, I feel very lucky to have glimpsed something that is very much lost anymore except in the shadowy depths of computer security or deep kernel hacking. Take care, Sina -----Original Message----- From: programmingblind-bounce@xxxxxxxxxxxxx [mailto:programmingblind-bounce@xxxxxxxxxxxxx] On Behalf Of tribble Sent: Friday, February 15, 2008 5:24 PM To: programmingblind@xxxxxxxxxxxxx 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