x86汇编是domain knowledge。面试时用这种题去测试,只能测出一个人是否知道这些知识,无法准确衡量他解决问题的能力。这虽然满足了面试官自身的优越感,却大概率错失合适的人才,还浪费双方时间。我觉得并不值得推荐。
你说的和汇编比除了无法用SSE,这句是不对的。主流编译器通过intrinsic函数把几乎所有SIMD指令都提供给C/C++用户了,你可以自己确认一下。不要低估本版深度。
【 在 wushu (武术) 的大作中提到: 】
: 这实现已经相当好了,版上绝大部分人应该是写不出来的,不知道上面说不好的仔细看过没。跟汇编比除了没法用SSE,该做的优化都做到了。
: 1. 4字节拷贝。没按8字节优化可能是追求代码简洁。
: 2. dest的4字节对齐。
: 3. 主循环内4条指令超标量同时拷贝32字节,一般处理器也够了。
: 4. 纯C,可移植性好,而且写的简洁美观。
: ps,我面试时coding基本必问memset或memcpy,十几年目前没遇到过能考虑到超过三条的人。
--
FROM 114.84.111.*