Method for the execution of a machine code of a secure function by a microprocessor, this method comprising: a) providing the machine code recorded in a main random access memory, this machine code being formed by a sequence of basic blocks in which: - each basic block starts at a branching address and ends with a branch instruction to a branching address of another basic block, - each basic block is associated with a signature and contains instructions to be protected, each instruction to be protected being immediately preceded or followed by a construction instruction to construct the value of the signature associated with this basic block, the execution of each construction instruction by the microprocessor modifying the value of the signature of this basic block in a predetermined manner, - each following basic block that is executed after a preceding basic block when the machine code is executed additionally contains a set of comparison instructions that • triggers the comparison of the constructed value of the signature associated with the preceding basic block with an expected value of this signature determined when the machine code is generated, and • only if these values do not match, triggers the signalling of an error when this machine code is executed and, in the opposite case, blocks this signalling, - each basic block is divided into a sequence of words each of N bits, where each of these words contains at least one machine instruction, and N is a constant integer, and then b) loading the machine code instruction or instructions designated by the current value of an ordinal counter into a queue, solely by complete words, and then c) executing, by way of an arithmetic logic unit, the instructions loaded into the queue systematically in the order in which these instructions were loaded into this queue, characterized in that: - each construction instruction is coded on strictly fewer than N bits, and - each word of the machine code that contains at least part of one of said instructions to be protected also contains one of said construction instructions. a) providing the machine code recorded in a main random access memory, this machine code being formed by a sequence of basic blocks in which: - each basic block starts at a branching address and ends with a branch instruction to a branching address of another basic block, - each basic block is associated with a signature and contains instructions to be protected, each instruction to be protected being immediately preceded or followed by a construction instruction to construct the value of the signature associated with this basic block, the execution of each construction instruction by the microprocessor modifying the value of the signature of this basic block in a predetermined manner, - each following basic block that is executed after a preceding basic block when the machine code is executed additionally contains a set of comparison instructions that • triggers the comparison of the constructed value of the signature associated with the preceding basic block with an expected value of this signature determined when the machine code is generated, and • only if these values do not match, triggers the signalling of an error when this machine code is executed and, in the opposite case, blocks this signalling, - each basic block is divided into a sequence of words each of N bits, where each of these words contains at least one machine instruction, and N is a constant integer, and then - each basic block starts at a branching address and ends with a branch instruction to a branching address of another basic block, - each basic block is associated with a signature and contains instructions to be protected, each instruction to be protected being immediately preceded or followed by a construction instruction to construct the value of the signature associated with this basic block, the execution of each construction instruction by the microprocessor modifying the value of the signature of this basic block in a predetermined manner, - each following basic block that is executed after a preceding basic block when the machine code is executed additionally contains a set of comparison instructions that • triggers the comparison of the constructed value of the signature associated with the preceding basic block with an expected value of this signature determined when the machine code is generated, and • only if these values do not match, triggers the signalling of an error when this machine code is executed and, in the opposite case, blocks this signalling, • triggers the comparison of the constructed value of the signature associated with the preceding basic block with an expected value of this signature determined when the machine code is generated, and • only if these values do not match, triggers the signalling of an error when this machine code is executed and, in the opposite case, blocks this signalling, - each basic block is divided into a sequence of words each of N bits, where each of these words contains at least one machine instruction, and N is a constant integer, and then b) loading the machine code instruction or instructions designated by the current value of an ordinal counter into a queue, solely by complete words, and then c) executing, by way of an arithmetic logic unit, the instructions loaded into the queue systematically in the order in which these instructions were loaded into this queue, - each construction instruction is coded on strictly fewer than N bits, and - each word of the machine code that contains at least part of one of said instructions to be protected also contains one of said construction instructions.