Thanks for your help but I expected to get the value of loaded into Flash in Record Type 05 according to Wiki.I dont get it?The four data byte is => 08000189 What is this?Also How can I record the reset handler in Flash Memory?How will the microcontroller understand that flash memory is reset handler?

Don't confuse this file format with a file full of hexadecimal numbers. The HEX file format is intended for representing object code so that it can be placed correctly in a microcontroller's memory. Meanwhile, since disk space was really expensive, don't waste space by filling in unused memory locations. To do that a bunch of extra data is added.

There are addresses so that the code can be placed.

There are checksums so that the code can be verified to be correct.

There are checksums and record counts so that short files are detected before causing corrupted memory.

The file format was invented at a time where each record would be transferred, slowly, using a serial or parallel printer port, between a slow computer and the programming device. Each record should be checked using the checksum, and all records should be received and checksummed to make sure that the image is complete before actually writing the image into the PROM/EPROM/EEPROM/FLASH (since erasing could take 45 minutes). The programmer would then verify that the write was done properly by reading back the device and comparing it against the image without re-reading the image from the computer (since rereading the file would be slow and the device can't even request the image anyway).

If you don't think that the checksums and record counts, load addresses and terminators, are useful, you're on your own. A lot of these artifacts are historical, but they are there to help you.

The 32-bit additions perhaps, the format is at least a decade older than that. The Motorola S19 format was from the 1970's, and Intel had their equivalent for the 804x and 805x parts. See Motorola EXORmacs and Intel ISIS