Pense bem: o Memtest86 precisa armazenar informações sobre o tamanho da RAM, o que é colocado na RAM para comparar posteriormente, onde atualizar a tela e muito mais informações. O ato de usar uma variável requer que a RAM esteja funcionando corretamente. Mas como você pode obter resultados confiáveis ao executar o programa com RAM possivelmente defeituosa?
Bem, é isso que o Memtest faz - ele grava vários padrões (conhecidos) na sua RAM, lê de volta e compara. Se houver uma incompatibilidade, sua RAM deverá estar corrompida.
Uma analogia a isso é executar um programa de verificação de disco rígido a partir do disco rígido que você está verificando. Você nunca faria isso, um bloco defeituoso pode afetar o programa de várias maneiras inesperadas
Embora isso seja verdade, há alguns casos em que você não tem escolha. Contanto que você possa carregar o programa com êxito, ele poderá executar suas tarefas de diagnóstico (mesmo que esteja sendo executado em algum tipo de mídia com defeito).
Como o Memtest86 funciona com RAM ruim?
Bem, ele deve carregar-se primeiro na memória. Na maioria dos casos, essa memória ainda será boa. Caso isso não ocorra, o Memtest provavelmente determinará que o próprio programa está corrompido comparando algumas variáveis locais com uma soma de verificação. No caso de não corresponderem, você saberia instantaneamente que sua RAM está ruim ou a cópia baixada está corrompida (e seria uma tarefa trivial determinar se a última é a causa ou não).
TL, DR: O Memtest86 + funciona apenas assumindo que o primeiro megabyte de sua RAM ainda esteja bom (o local em que ele seria carregado provavelmente). Assumindo que esta área está corrompida, o Memtest86 + simplesmente não funcionaria (o que é um indicador bastante rápido de que sua memória RAM está ruim mesmo sem a execução dos testes).