; The OS/K Team licenses this file to you under the MIT license. ; See the LICENSE file in the project root for more information. ; ; int strcmp(const char *str1, const char *str2) ; ; Returns: ; 0 if the contents of both strings are equal ; >0 if the first character that does not match has a greater value in str1 than in str2 ; <0 if the first character that does not match has a lower value in str1 than in str2 ; strcmp: mov rcx, STRLEN_MAX cmpzsb.rep.z ax0, ax1 mov rax, b[ax0-1] mov rcx, b[ax1-1] sub rax, rax, rcx ret ; ; int strncmp(const char *str1, const char *str2, int maxn) ; strncmp: mov rcx, ax2 mov.cxz rax, zero ret.cxz cmpzsb.rep.z ax0, ax1 mov rax, b[ax0-1] mov rcx, b[ax1-1] sub rax, rax, rcx ret