Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Overall, a very good article, though I'd pick this nit: separate I/O instructions survive in 8086 and AMD64 as well, at the very least.

Never having done ARM assembly language programming, does ARM have I/O instructions, or is it strictly memory-mapped?



Those are descendants of the 8080 he mentions as one of the two exceptions.


The comment about I/O instructions really comes from the microprocessor wars of the 80's. Intel and Intel influenced processors had I/O instructions and Motorola and Motorola influenced processors did not. So it was a thing to argue about. The difference really amounted to nothing in the end.

RISC processors tend to not have dedicated instructions for things (it's in the name). They also tend to have reduced access to regular memory (load, store), much less an entirely separate memory bus dedicated to I/O. So processors like the ARM can't practically have I/O instructions. If you belong to the faction that believes that I/O instructions are the way to go then you would consider that a weakness of RISC processors… :)


ARM has no I/O instructions per se. It does have a whole range of instructions to deal with “coprocessors”, which was mainly used for floating point (originally a separate chip, nowadays integrated into the processor but still using that part of the instruction set).




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

Search: