I'm not sure there is such a fundamental difference. In biology the code is the DNA and RNA, whereas the hardware is the proteins. DNA and RNA are self-modifying and imperfectly transmitted, but those traits can also exist in computer code (to the extent that they aren't, it's because humans make sure of so, because they hate trying to understand dynamically changing things). The hardware of life is self-creating and self-repairing, but - again - this can also be easily simulated in computer hardware, to the extent that it isn't, it's because it's costly and there is no good reason for it.
Biology's difference from computers is in scope (organisms are whole factories who just happen to have computational abilities by necessity) and origin (organisms aren't designed, and this profoundly and significantly affects everything about them).
> In biology the code is the DNA and RNA, whereas the hardware is the proteins.
This distinction isn't as clear as you think. The active parts of ribosomes (the machines that translate mRNA into proteins) are catalytic RNA. There are organisms that use RNA to store templates (RNA viruses).
Biology's difference from computers is in scope (organisms are whole factories who just happen to have computational abilities by necessity) and origin (organisms aren't designed, and this profoundly and significantly affects everything about them).