Hacker Newsnew | past | comments | ask | show | jobs | submit | rzach's commentslogin

I hate how much emphasis is put on economic value. I love math because of how beautiful it is. I went to uni for math but ended up switching to theatre because of how it was taught as just a means to an end rather than an art form in itself.


During my freshman year of college, I was in a general chemistry class. Halfway through the semester I wrote a little Python script that encoded mass of a whole bunch of (not all of) elements and wrote some functions to calculate mass of compounds plus a few other useful quantities. Homework was online so I didn't have to show work - I would just type in the compound and whatever I wanted to calculate. If not 100 hours, it saved quite a bit of time!


* Abortion is wrong in all cases (angers the liberals) but * We need broad socialized healthcare, paid parental leave, etc to help the mothers (angers the conservatives) * Money is contributing to systemic racism - let's get rid of it and just be good people


Yes - all of my grandparents are immunocompromised so I want to be very careful around them. Not to mention it will probably be a requirement on college campuses once it becomes generally available.


Love this - I actually started implementing these circuits in C [0] a while back but never got past combined memory.

[0]: https://news.ycombinator.com/item?id=23672470


I'm teaching myself some JavaScript with this project. Please feel free to make suggestions. I know I should modularize it (is that a word?) but alas, being new to JavaScript I don't yet know how to do that. I also know that ideally there should be comments in my code, which I will add. But please suggest any best practices/improvements.


Hey, thanks for the recommendations! I'll definitely look into the AVR instruction set. I'm not opposed to multibyte instructions but I'm trying for 8-bit instructions. I'm actually planning to use a special register that holds the ALU input so that I have more space for instructions in the actual instruction. It'll take more instructions since you'll have to set the ALU each time you need it changed, but as it's not a physical microcontroller, I'm not worried about running out of room. Do you think this is a feasible plan?


It's certainly possible, but remember that with 8 bits you have just 256 different possible representations, and every instruction opcode with its set of all distinct valid parameters will map to a number of those limited 256 states. For example, this makes it a big challenge to encode anything other than very small ranges of immediate values inside an instruction.

Typically whenever there's a reference to an N-bit instruction set, it's referring to the widths of the registers and data paths. Very often this is not the same as the instruction size, and in many cases instructions may even be of variable length.

So while it's much more restricting to commit yourself to only an 8-bit instruction size, it should still be possible to build something with it.


Thanks for the recommendations. I've briefly looked at the 6502 instruction set. Part of the problem is that most of those real-world CPUs use multibyte instructions, which I'm not opposed to, but I'm not sure how to actually incorporate them into my current design (It would be a lot easier if I just did a 6502 emulator without any of the logic gate stuff). Thus I'm trying to come up with an instruction set that utilizes only 8 bits per instruction.


I'm fairly rusty on 1970s CPUs, but digging back into the recesses of my memory I have a feeling that the PDP-8 used single-byte instructions. (or maybe I am remembering the EDUC-8 project that was based on the PDP-8.)


Yeah, I know since it's gate-level it will be slow (and it's already been tedious to code) but I wanted to get a better sense of how certain components actually worked. Multibyte RAM, for example, is not demonstrated in the NandGame which this is based off of. It has you put two registers together to make a two-byte RAM and then it magically extends it to a 16KB RAM, only saying that the design could be repeated recursively to get bigger RAM. Figuring out how to do that was interesting and enlightening.

Having no experience with netlists other than briefly reading through the Wikipedia page, it seems they are basically just a struct of subcomponents which is what I'm using. How would I go about abstracting that?


This is pretty cool. I actually remember reading your article a few months back. Once I'm finished with the actual computer I might try to write something with Xlib render a terminal and maybe even a GUI for the OS (unless anyone has a better, higher level alternative to Xlib?)


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: