非要“从计算机实现方面来回答”的话除了读写不一致的特殊寄存器(比如SBUF),其他的100%能实现,只要你有耐心去分析汇编后的代码来确定编译器的编译、分配、优化规则;
但是! 你必须的明白并确信: 不同的处理器、不同的编译器、甚至不同的优化方式或优化级别,它们生成的代码和内存分配方式完全不同,一种方法条件稍微更改可能就不对了! 这根本就不是通用的方法,也根本就没必要这么做!这么做也只有百害而无一利!
不讨论更不建议讨论这个的最根本的原因还是C下面变量作用域的理解和定义,搞懂了并能正确选择“作用域”,根本就不存在这样的问题
我之所以一再发贴回复、说明,只是怕你的所谓“高深理论”会误导初学者! 请初学者或没搞清楚“作用域”的,看贴时一定先去看书,并且多想一想!
切记! 切记! |