ONLINE VIDEO
Latest topics
Self-modifying code
หน้า 1 จาก 1
Self-modifying code
In computer science, self-modifying code is code that alters its own instructions while it is executing - usually to reduce the instruction path length and improve performance or simply to reduce otherwise repetitively similar code, thus simplifying maintenance. Self modification is an alternative to the method of 'flag setting' and conditional program branching, used primarily to reduce the number of times a condition needs to be tested for.
The method is frequently used for conditionally invoking test/debugging code without requiring additional computational overhead for every input/output cycle.
The modifications may be performed:-
* only during initialization - based on input parameters (when the process is more commonly described as software 'configuration' and is somewhat analogous, in hardware terms, to setting jumpers for printed circuit boards). Alteration of program entry pointers is an equivalent indirect method of self-modification, but requiring the co-existence of one or more alternative instruction paths, increasing the program size.
* throughout execution ('on-the-fly') - based on particular program states that have been reached during the execution
In either case, the modifications may be performed directly to the machine code instructions themselves, by overlaying new instructions over the existing ones (for example: altering a compare and branch to an unconditional branch or alternatively a 'NOP'). In the IBM/360 and Z/Architecture instruction set, an EXECUTE (EX) instruction overlays its target instruction (in its 2nd byte) with the lowest order 8 bits of register 1, as a standard, legitimate method of (temporary) instruction modification.
promo codes
bet online
The method is frequently used for conditionally invoking test/debugging code without requiring additional computational overhead for every input/output cycle.
The modifications may be performed:-
* only during initialization - based on input parameters (when the process is more commonly described as software 'configuration' and is somewhat analogous, in hardware terms, to setting jumpers for printed circuit boards). Alteration of program entry pointers is an equivalent indirect method of self-modification, but requiring the co-existence of one or more alternative instruction paths, increasing the program size.
* throughout execution ('on-the-fly') - based on particular program states that have been reached during the execution
In either case, the modifications may be performed directly to the machine code instructions themselves, by overlaying new instructions over the existing ones (for example: altering a compare and branch to an unconditional branch or alternatively a 'NOP'). In the IBM/360 and Z/Architecture instruction set, an EXECUTE (EX) instruction overlays its target instruction (in its 2nd byte) with the lowest order 8 bits of register 1, as a standard, legitimate method of (temporary) instruction modification.
promo codes
bet online
taixyz1992- Posts : 38
Points : 96
Join date : 26/08/2010
หน้า 1 จาก 1
Permissions in this forum:
คุณไม่สามารถพิมพ์ตอบ
Fri Dec 24, 2010 1:26 am by taixyz1992
» As an actor, he has made guest
Fri Dec 24, 2010 1:26 am by taixyz1992
» Seth MacFarlane
Fri Dec 24, 2010 1:25 am by taixyz1992
» Emaar Transport Chunk Of Dubai To Pakistan
Thu Dec 09, 2010 10:25 am by Mr007
» Malaysias Petronas To Be Joined By New Twins
Thu Dec 09, 2010 10:24 am by Mr007
» Singapore Marina Bay Sails Into Sight
Thu Dec 09, 2010 10:23 am by Mr007
» Karachi Finance Towers Start Construction
Thu Dec 09, 2010 8:20 am by Mr007
» Singapores Green Art Dream
Thu Dec 09, 2010 8:20 am by Mr007
» Atkins To Turn Abandoned Quarry Into Hotel
Thu Dec 09, 2010 8:18 am by Mr007